package com.sojourners.chess.util;

import java.util.HashMap;
import java.util.Map;

public class ZobristUtils {

    public static String getMoveFromVmove(int vmove, boolean leftRightSwap) {
        int first = vmove >> 8, second = vmove & 255;
        if (leftRightSwap) {
            first = first & ~15 | (14 - first % 16);
            second = second & ~15 | (14 - second % 16);
        }
        return coordMap.get(first) + coordMap.get(second);
    }

    public static long getZobristFromBoard(char[][] board, boolean redGo, boolean leftRightSwap) {
        long zobrist = 0;
        for (int y = 0; y < 10; y++) {
            for (int x = 0; x < 9; x++) {
                char letter = board[y][x];
                if (letter != ' ') {
                    int chess = pieces.get(letter);
                    int index = (leftRightSwap ? (8 - x) : x) + y * 9;
                    int square = c90[index];
                    zobrist ^= zobristTable[chess * 256 + square];
                }
            }
        }
        if (redGo) {
            zobrist ^= zobristPlayer;
        }
        return zobrist;
    }


    private final static int[] c90 = new int[] {
            0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
            0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
            0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
            0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
            0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
            0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
            0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b,
            0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab,
            0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb,
            0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb

    };

    private final static String[] san90 = new String[] {
            "a9", "b9", "c9", "d9", "e9", "f9", "g9", "h9", "i9",
            "a8", "b8", "c8", "d8", "e8", "f8", "g8", "h8", "i8",
            "a7", "b7", "c7", "d7", "e7", "f7", "g7", "h7", "i7",
            "a6", "b6", "c6", "d6", "e6", "f6", "g6", "h6", "i6",
            "a5", "b5", "c5", "d5", "e5", "f5", "g5", "h5", "i5",
            "a4", "b4", "c4", "d4", "e4", "f4", "g4", "h4", "i4",
            "a3", "b3", "c3", "d3", "e3", "f3", "g3", "h3", "i3",
            "a2", "b2", "c2", "d2", "e2", "f2", "g2", "h2", "i2",
            "a1", "b1", "c1", "d1", "e1", "f1", "g1", "h1", "i1",
            "a0", "b0", "c0", "d0", "e0", "f0", "g0", "h0", "i0"

    };

    private static Map<Character, Integer> pieces;
    private static Map<Integer, String> coordMap;

    static {
        pieces = new HashMap<>();
        pieces.put('K', 0); pieces.put('A', 1); pieces.put('B', 2); pieces.put('N', 3); pieces.put('R', 4); pieces.put('C', 5); pieces.put('P', 6 );
        pieces.put('k', 7); pieces.put('a', 8); pieces.put('b', 9); pieces.put('n', 10); pieces.put('r', 11); pieces.put('c', 12); pieces.put('p', 13);

        coordMap = new HashMap<>();
        for (int i = 0; i < 90; i++) {
            coordMap.put(c90[i], san90[i]);
        }
    }

    private final static long zobristPlayer = 0xA0CE2AF90C452F58L;

    private final static long[] zobristTable = new long[] {
            0x7130B4BD8F138026L, 0x451A5F875056AE15L, 0x9023211DB6E216DDL, 0x8176B9AB5178BE31L, 0x9CA65525FE49D1F0L,
            0x64BFA2303868852BL, 0xB91360D20127098EL, 0x36150C526E1DD2F5L, 0xD8BBFB8FCD6F735DL, 0xA3B35E61D7DA5068L,
            0x46982BFDF96E1DCDL, 0x012367021814AD81L, 0x4089DA4C1B9C5662L, 0x42BBDB342F88A0D4L, 0xC827E492D9CEB711L,
            0x4E18FABBC55DBE46L, 0xFB7A0B8AC6284121L, 0xF179FC42457A105AL, 0xF5A6CFA529C8D035L, 0xED7626E641383689L,
            0x3B8A9E8457E65E67L, 0x674957C0D8CE647FL, 0x7C4CE37B578F1A9BL, 0x07F9D32932E1493BL, 0xAC776EB186FCC474L,
            0x3FE8BF61B3D17258L, 0x04B55A2FB8F42D93L, 0xC0DD14998777FF0FL, 0x6E4E1E15DB62B600L, 0x846AE109AE2C37B7L,
            0x7093E9E05DF029FBL, 0xD3982B39A0FDB1C7L, 0xBDE6DB97B7F5A17CL, 0xC0EED455913ADDA6L, 0x46947371FECE7628L,
            0x81AEF4C1CC7A02CFL, 0xC5C82E68E036A296L, 0x7FA039EF30781817L, 0xAAE0E8DEEFF3F606L, 0x1D0521C1E13B610EL,
            0x69F10F80F4A40A00L, 0x197FE1B1681516DAL, 0xCACFBC19E54CE37CL, 0x233B0A0A4B37F1F9L, 0xC90B6A25FFB22F73L,
            0x7574FC9E93A8FBCFL, 0x2A3A777D6F54AB13L, 0x96920D6C2292F1EAL, 0x25862C838D6591EFL, 0xF6242FA4AF008A5EL,
            0xC8FCB0CE3BC170D8L, 0x18D91DC3523B5FB1L, 0xE118A157278E0A46L, 0xEF116C3273168425L, 0x5F19D7CB03CA217FL,
            0x44E11F566FAF8769L, 0xAD2C7BA5F0A013D9L, 0x7188039CA11F66F2L, 0xB60BF14EF215B3CAL, 0xEAF97C8185E0C08EL,
            0xEAAF8D87B72DEFA2L, 0x69CADA520DBDFFF2L, 0xEDBA60006A42FE2AL, 0x5CF499B4F530734DL, 0xEBD032FF7C032574L,
            0xED0CEFE2DE548828L, 0x63982B947C1044A4L, 0x7E34A6BFAA97391BL, 0x021DE9E384DEA780L, 0xF0B240D20A7A3E21L,
            0x9A6A479E6C2962F8L, 0x443FBA6FCFE3AC8AL, 0x0B94FFD875CA1C18L, 0xCB58573E538730E6L, 0xD936CAF0DC8EB6FDL,
            0xDC5C557CB71F3C59L, 0x79102F57CB1791B8L, 0xB825EF53C44BB033L, 0xAFDA588F7EA0AF51L, 0xC2B5F9C4E30B95CBL,
            0x80A454CAEDF92144L, 0xDCE464932ADF15E8L, 0x37C78B2ED8C9A22FL, 0x6F89F2DC6ECB7A3BL, 0xC66174B2BDBAC28CL,
            0x0B5FECE55E935CBEL, 0x7F6D244689C750A1L, 0xF6DB5CE7369C13EEL, 0x1DFE7BE1079E5717L, 0x3E8FD681C406383BL,
            0x26C4AFB21394B9D8L, 0xCF2FC6C843BF9E29L, 0xEFEAF2C2C752AF1EL, 0xAC072DA2A15421E9L, 0x9B88BCE097F522D8L,
            0xEBD45C9DDD79F483L, 0x944A0CB6EA118CD7L, 0x2A2D9F08F4688FC3L, 0x5B935E97509CF65AL, 0xDF28D78E81335D7DL,
            0xCE54AC786E5569F5L, 0x73BF3C535D72C7F1L, 0xFBE4F2426CFBE0EBL, 0x2175DFE5E3BCA451L, 0x4AA446981A35836DL,
            0x391597228F7485B6L, 0xDAD29FD49FA7CD5AL, 0x90C83E823DAED609L, 0xCAE55B04A2616F7CL, 0x97B7D80D98F6E3A8L,
            0xBBDC533A45662552L, 0x66558A90C4EE35D1L, 0xA1710EA33BB6C1E7L, 0x28B3A66776D9BF1FL, 0xD3AC2058AFD6FA44L,
            0x75E9909B554C3C8FL, 0x87519DF971800282L, 0x7E3D65D3834888F0L, 0x32BC129FBDBBFA89L, 0x93D99FE52A4A37B1L,
            0x5F2A71E5FA4BF9F5L, 0x0118DEABF2CAB75CL, 0xE524B92B0AE556C5L, 0xF6017B176BF8DB47L, 0xBF8CEF69A56598BBL,
            0xB6491634B1744D44L, 0x1613D072E1BB7B8FL, 0x1C48393EF0FDDB53L, 0x47312B801AF3FC6CL, 0x1D89CBA1D23AAAA0L,
            0xBD6ADA8CF8674350L, 0x152C541877B2E05DL, 0x85997C0948AE573DL, 0x610FDEECE2659A30L, 0x460566FD239E8469L,
            0x3AD870AE78696B4BL, 0xAA9C6EC2753A3DC6L, 0xF71096789320D072L, 0x5327FB17490C1F9AL, 0xDD3FBF4552CAFC71L,
            0x47579F4DD4221F05L, 0x8D93C8864B2CCFD4L, 0xD395BBF07B5A72A0L, 0xD5C21F99785D11E4L, 0xF309D54DD472EAA0L,
            0x510B1D7B92B4662CL, 0x18CFCADDC9DCD31EL, 0xA8D9266A96235115L, 0x7E56238CC3F22970L, 0x86334FF6EB3AB765L,
            0x20FB95886DDB75BFL, 0xC24CD15A9F5DEF9CL, 0xE76DB13580FB8C3BL, 0x57BC1FB405AF897CL, 0x59F0CA8C1F7B659AL,
            0xF06F06193B70AF52L, 0x09A2A61D94F9B4C2L, 0x20393C4228A1C5ACL, 0xFBF0B3A97C496FD6L, 0x6AE149E1B8E081A3L,
            0x6AE2A31D317E3CFCL, 0x20DABC87F88EE2E6L, 0xF283C6864964A78FL, 0xD9602E474779A623L, 0xE1993F7829FE40A2L,
            0x4D6D0818B4572D85L, 0x02010D007B4765F9L, 0x171880531B8D5860L, 0x957A1458A42BECECL, 0x6E226759D7CFA040L,
            0xE03C160B0D306AC5L, 0x3703D6F03C56E0F8L, 0x75B40F5598EEDA9BL, 0x0FA29F77B672C261L, 0x8EDB5023922F80C2L,
            0x95CC2DA8DF7D1DECL, 0x070B750DA000B638L, 0xE1E38F29C032BF35L, 0x6DD75E5089CE4AC5L, 0x7DB988B3D3B35634L,
            0x445C2CCFA024FA9DL, 0xDE4A5149426CAAC5L, 0xD4A088B2E2591CCBL, 0xF9260F515C7BEC95L, 0x54051E52DE03C1B2L,
            0xA592BA34D6F9A7C4L, 0x086E39A6F2CA055DL, 0x47F9F977810A45B0L, 0x2CB93A8143A3EF7AL, 0x6E00F5059360E2C8L,
            0x9E344875D6536B35L, 0x44B0BDD03046755CL, 0x8C3B984FDA84BB4EL, 0xE2591594EA2916BEL, 0x8EC32296B3886320L,
            0x7D657D057BEB8736L, 0x3A80FEA71258DB6AL, 0x9A200450904B8E99L, 0xBB8CB47E59282224L, 0x2D67375E4CCD7677L,
            0xABBA445D0E5E56A6L, 0x3BA418E098C6584AL, 0xEA93C301BA87AFE3L, 0x1BD589AC92372907L, 0xCBC7DF3D935B4087L,
            0x904D689B984C1CF6L, 0x48025646359B3D40L, 0x4BC51E890E7181D0L, 0x5592CB241034E377L, 0x6BB63DCC0319D264L,
            0x63E7C742ACA0C341L, 0x826BF0E102605E56L, 0x50D0C2231B2C1D51L, 0xDE0B7CC516E3B9B6L, 0xAAA010D0DD6A4E35L,
            0x9FD64CD35A469385L, 0x28AD6EBF5DB67222L, 0x7235ABC802ED5F5AL, 0x8E61954D80469917L, 0x6EA2CBDC5DAABDCAL,
            0xC5DD713688F7192CL, 0xF04902B8E0359041L, 0x9073D9CA988D5D33L, 0x574779548452F866L, 0x1E98C0DA4CDB082CL,
            0xB4BDF7A2EBCD784EL, 0x008DE7CF00C67A09L, 0x8B5D1C3C726D5000L, 0x26FD82782BD1C0DDL, 0xE4F1AD0E95465E12L,
            0xD0DD76A8DC765970L, 0xF5755359BDCD047AL, 0x545A1CD1E52664BDL, 0xB16E9726D3472FB8L, 0xF5342D4D398633FCL,
            0x01F5E0A47E506E06L, 0xBDDFA4284FFB5311L, 0xCE7D3CAC503D553CL, 0x9BDF9DC98B5099A1L, 0x4D7DB1040B5E997AL,
            0x5D3D05D360E35524L, 0x337BA8BC212C7BE1L, 0x86A62B460947E29AL, 0x3D513D5CA88EEFE1L, 0x29A0CCE9F41C1CD5L,
            0x197FD26418A34EE2L, 0x326F3B949B426C85L, 0x3E4E91EA83647D53L, 0xCFA3E8FD16681952L, 0x59BDEF07E7CD5168L,
            0x341025521D64C7D1L, 0xCEEAF8F1C434AB08L, 0x409C4FDF6688E61FL, 0x643AB4959FA3CDBDL, 0x58C41B99A5AB395AL,
            0xF0B655B8D42A00A9L, 0xABD7437EC956585BL, 0x3F42808B843F0DC0L, 0xE0C928421512B453L, 0x85E82CD69A61C0E7L,
            0x0C3C34CD0A7DEE44L, 0xA82B08CCC44BD09AL, 0xE2A835B21E653066L, 0x077406CF9230F54FL, 0x1CD68CB8E3D724F9L,
            0x85DAEB464697B1B0L, 0x7DA2593F4CA08018L, 0x8825EA023C853D5DL, 0xEEC8F4378562F880L, 0x059AC163DFC9F4DAL,
            0xF9C81F2073038B6FL, 0x314738E40E6974D0L, 0x8327245D17DF9208L, 0x02AD6C54622EEBD2L, 0x3C3768ED10B692D8L,
            0x2D4A31901EA2053EL, 0x433957859408E871L, 0xF1307F2059AF68F0L, 0xFE02DFAFD2155E43L, 0x5CFFDBA1747776E9L,
            0xC9A5848E286D570BL, 0xBCC49B8DE5DEF315L, 0xBC3F0A86F9987C91L, 0xFBD32161F98D94D2L, 0x27031D1D87EBEE9CL,
            0x137EA6D6042F2EE6L, 0x7FBA0AD49A60F731L, 0xBF8E614730F0380CL, 0xA45457FEDAC904A5L, 0xED9F8B297C43B13CL,
            0xA2D9CF016E619E07L, 0xE82794BDF52D8E54L, 0x8DE9C087EC7044E6L, 0x5A950B05805F2ED9L, 0x6421FCCBF228CF8EL,
            0xDC1439499F9BEFDFL, 0x692C94144FC54921L, 0x13C21B59B3FB3D5CL, 0x0BE3042A904A613FL, 0x05A6B8EF1ABA9873L,
            0xAFD0468D5425FB1CL, 0xED8F697BEA759978L, 0xE390DBBC06690C31L, 0x7DF25EF2C1B3D7BBL, 0x72EE3703C4FE44EBL,
            0x274421EE4FE5A662L, 0x1540B7C94DE20203L, 0xB9B835E58EFF0CD5L, 0x30874D584E06536DL, 0x12263CF38E0B9A89L,
            0x51CFFCD4B2168DF8L, 0x74DB1C017C23812DL, 0x9DEF49F43E19EF14L, 0x106285F49F650D8AL, 0x7432FEBD1E556661L,
            0x70DC8AD69498F68FL, 0xF19E609342B42EEAL, 0xB43E22B4625CDB64L, 0x606AED6D8D629241L, 0x12E0FF48DDC8FC78L,
            0xAEEC871C960889D2L, 0x200E4F561E9D90E9L, 0xC4A4C01F24A7072CL, 0x45BC5EDC5634E0AEL, 0x0E33718AF9BD0A0DL,
            0x8F78D4320E85D575L, 0xDAFFA02864F5E370L, 0xEC86C7522DB34F12L, 0xD3D923E5F844A6FDL, 0xFA7D0A7A1EB505E4L,
            0x027B6460BAF76879L, 0x2A38E595F8D474B2L, 0xA0C2F34BC6D8892FL, 0xDAC414AEB5C574BEL, 0xFD8EFE0F19341970L,
            0x8AD040FA4163BA22L, 0xAEAF1F094212BC94L, 0x33B8FFE4761403B6L, 0x9CE6C86CE5BE2223L, 0x727C17C73609E90DL,
            0x62F7DAC41F27950FL, 0xF5EA32D84BBC8A53L, 0xF4CBBBB5657BEA2AL, 0x0F517A14DB0E5108L, 0xCA3E12B18BC14936L,
            0xFE30DFD5B8A4BDEEL, 0xE3B114C76F0F7848L, 0xC2081FF9FE39BFA8L, 0x377B82E296760752L, 0x99221E6A70AF8EDDL,
            0xA86B92570F640A10L, 0x9A3E88088FD8DFD5L, 0x18FD2A9A59E788A9L, 0x9B4761EBF8122EEFL, 0xCE8F38AD29D683C9L,
            0x0AC79B1BA2DB545FL, 0x0DC614B7C478E6FEL, 0xA69F31CD15C23518L, 0xCF769CF9BDFF1C95L, 0xA27CE272F619A1CFL,
            0xEDD97E2FF6A93857L, 0x8DE4D8C20C0A926EL, 0x1E7089339D1BEACEL, 0x4E1DCD2008B63B80L, 0x4FEDD394920F34FEL,
            0x5E218FB6693C4C55L, 0x8E97598B791934B2L, 0x0FB211C4DB9C47EFL, 0x8F06AEAFB2F1EBCBL, 0xAF04F990627F2FF7L,
            0x38CEC469D73EA940L, 0xDFF6C99EE2257050L, 0x6A77CD2AEE82C8A2L, 0xF28554C80AC672F9L, 0x406AEE0390776562L,
            0xA653B1E543DACF62L, 0xC2CF09484FB7F138L, 0xE44857CB17E0F569L, 0xACFE5877A93AE94DL, 0x6BD6B075B1555386L,
            0x5E274DADACC63C1CL, 0x51537D31C7AB98FBL, 0xA7D0F1826B19E227L, 0xB5B888D02E42A80BL, 0x86632D398F3B45F3L,
            0xA88454C497646176L, 0x237E0EBD89E4EBE8L, 0xBBEA1E661284F9CDL, 0x1BCE97F0C8B76903L, 0x4C517E505F19D26AL,
            0x9C3B79717E79AF83L, 0xB827B135E474AAFFL, 0x0EAA55F3EE469AF4L, 0x6652634B833F3E24L, 0xA7473AF5A12B8146L,
            0xF21671B7CE444A46L, 0x0A1DE189D45D74D4L, 0xE510F44C4E5EF9E4L, 0x2FFEEAA2ADCC6380L, 0x54E8791C10816108L,
            0xA3122938856EE959L, 0xF4A0DF4C24EA2B4EL, 0x791DAE527B579162L, 0x730962D6F3B66D04L, 0xB57432EE8D29ED6CL,
            0xBA80A3BD252CA320L, 0xC0A2AE71513DF629L, 0xB453147D5B2C9923L, 0x225F093A925116E3L, 0x6542396F255E7924L,
            0x2CDFCE9FA44BB47AL, 0xC34970F43ACF098FL, 0xE9AEEB95D937F58FL, 0x687B4F4521D5DD65L, 0x01300BE22536A20EL,
            0xE5DFC3E9922C4F02L, 0x717B6ABCE8D6AA77L, 0xE57DB6BA0D58D2A6L, 0x60D651626AC55B90L, 0xD64502A5EE95D561L,
            0xB5FA2A17EC8C0164L, 0xC9582135958FC611L, 0xEE8344C1E19954C4L, 0x7837CF255667618BL, 0xC448CF344C71909FL,
            0x109EC4308D96B82DL, 0x3F04BAF84B9A88EAL, 0xBF639A875F62F26CL, 0x7AA0384D965722F7L, 0x197B692B50B16B14L,
            0x6D9AF6C73900AF62L, 0x1344B3CA12371956L, 0x806E82E6B15E7006L, 0xB485FE720F18C9E3L, 0xE87881B804FC9892L,
            0xB514FFD89D201D92L, 0xB0DA1B717631E6B5L, 0xBCE52DB116F37D72L, 0xF3E7E0B0C0031705L, 0xC44047E6F7A8FF33L,
            0x6A2B3F09E5E20DFFL, 0xD8376D5B4B60E246L, 0xEA9A751191B618D6L, 0x85E15B1EF98B2D2BL, 0x5C9F283D995EBFF4L,
            0x46C291DE5BB153C4L, 0x399E0B67FC70554DL, 0xBBC5509EC6B802A2L, 0x5B232FE5E38EC2FEL, 0xC46C93A6ECB300A8L,
            0x0E7D08AD8C6C32C9L, 0xEF7946C452725F83L, 0x5875BB0EC00C0569L, 0xC2FCAEF70627BCB7L, 0x1603571CDC91C8DEL,
            0x7DDE8CCB1B957059L, 0x9331DEF3087DFF1EL, 0x0E23128AF65503B2L, 0x422DA38E3ADD22C0L, 0xF7C673B863F5F95AL,
            0x1B41B4020A90FDAFL, 0x51C9A20D3DB6A18BL, 0xA5C02C6A966BA5E1L, 0xA417B39904E238C1L, 0x9338C0FB38935E99L,
            0x532CE15BF4CFB3DCL, 0xEC04532D412240D6L, 0x27FA420EA2C7B462L, 0x181677150EAE7BC7L, 0x553BED9EBE1E7896L,
            0x5B2FD1742EFBC680L, 0x418CA72B61F20679L, 0xF1F0683866BE4E53L, 0xD8C0F92A762C1DF7L, 0x67F3229FBCEE1969L,
            0x099F4DA05E6DFDC4L, 0x3805504714CF8B92L, 0x80D22F3733C207BFL, 0xB8AFC305A9790B6DL, 0xA8F9FB39C90AA4D2L,
            0xBAB73A768636C050L, 0xCC0A34644A373DA4L, 0x8ED715B148CD959BL, 0x55A80EAC2B7D849BL, 0x8DEE3BB83D4AAE58L,
            0xBB07E90EDFE6F703L, 0xC4F051B49E974C5BL, 0x24CCAFB135A33651L, 0x06626B3223BEF039L, 0xB4B82274CABEF7DAL,
            0x57C76808A76733D2L, 0x557FEE74D5E09877L, 0x544F71C8CD9E2745L, 0x20E51FAB44F3B2F3L, 0x8943A2FF3BC05883L,
            0x91327F52FEA5BB31L, 0x5E0DF9B866E337DBL, 0x598F2F63ABD2E563L, 0x0365F043D6BC5038L, 0x461A8FE29B10D7DCL,
            0x3516573BE5B357E7L, 0x3B8DEB7F1AB21F34L, 0x69EF366CEA5A8721L, 0xD828E25554ADE7DEL, 0x67EBB3483B39F3A8L,
            0xD6F7DF759404ED5FL, 0x212F071B4B677D3BL, 0xDD046C22AC5AAEC0L, 0xFB6E1153DD1E2CB2L, 0x97D35E894A8C98FEL,
            0x087A6EAD9F06D7F4L, 0x3F8EE504C8484B7BL, 0x0E149930E1A2F734L, 0x678F3ECCFCA9AFC0L, 0x7EC9927F53DD6C0EL,
            0xCF722347391CA511L, 0xBF909DF5085B997CL, 0x2FC2DDF6F3D0499EL, 0x5FFF5EBAD0DD23C2L, 0x293372619835465DL,
            0x9F57AAF3298911B9L, 0xAEB705081A173FCDL, 0xE156D4BA23ACE526L, 0x3B50E0E6C107FD2CL, 0xCC966FC46612A601L,
            0x16364FC077ECC8F4L, 0x6B7A9AF718B2DCD1L, 0x54E5F2C147A6508EL, 0x5A0AD4605220A294L, 0x45256CE34BE5AE9FL,
            0xC8C29F8DC6BED0BEL, 0x9256D4BEAE5EA267L, 0xA046AE47B4550A60L, 0xD4641C4CCEB20FF5L, 0xA61B2E4D3854DF6FL,
            0xD4865E6EBC7E904AL, 0x20DA3FBB53A7BDC5L, 0x6774FFD7552EE5A7L, 0xAD132B56FC964F54L, 0x6711BF4F78356788L,
            0x24E69A066DDE5B9BL, 0xF96EE40FA2943B2AL, 0xB592D351C9CB526CL, 0xD2152449A594C085L, 0xD9984BD710A76073L,
            0x36B4D5BA5CCE5126L, 0x35B99229FB8F622AL, 0x9BF8927ECCB2954CL, 0x750A14A82F53481BL, 0x8BF66928F4E81D2FL,
            0x6E657161D698179BL, 0xD7C3A46668EEE763L, 0xB60E8638AF30B565L, 0x5AF8A85EF5A2DAB3L, 0x7AE0EEF45C21A3C6L,
            0x247AA638834FC8E1L, 0xD963AD160483642AL, 0x9DA66D060A24A134L, 0xE239BDC416F74C54L, 0x8A033EAE9A075CBFL,
            0x16CC89355A20E98BL, 0x97E8BB34EECCB3B9L, 0xB0BF009D6C1D9072L, 0x880FC10CD715A26CL, 0xD0946F9A9DA78677L,
            0x90C74201DE237D80L, 0x9828A0C7591DD9F4L, 0xE395B5817809A0A5L, 0xC7F8BE13AA5D1073L, 0xE35176E9ABED6FF6L,
            0x6CE4712469EE5EBCL, 0x574834D0A8E2C384L, 0x40FBBA002CA43496L, 0x3FCDF103605E35E9L, 0x2F0DFEE4107C165BL,
            0x239DA452341381D8L, 0xA81F632B381798D4L, 0xADB419068568EFFDL, 0x558BC0C2A7D867F7L, 0x52DC6F3DC9A41DB5L,
            0x448773B36A459F7EL, 0x56EBD31F3832EE5EL, 0x69D785DB8CFC746DL, 0xCDAE6A497F74144DL, 0xE904160454095107L,
            0x5CD6579330A59BB5L, 0x8AEA9509973A20B8L, 0xA4BE1E940C9B10FEL, 0x1E8429E083833009L, 0x2F9E9F3691208D5DL,
            0x75D61DD81A41C493L, 0x8BDB28E4E1ED77ADL, 0x0A704178E8B6FB88L, 0xC85218B2B04BECD8L, 0x3A808C043BCCA15BL,
            0xBB26AA37219ADA54L, 0x4B6CAF966EBF2377L, 0x1E40CB982F082E7DL, 0xCB0CBE8CC6E98537L, 0x62C8169757F2EDD7L,
            0xBF044FD343AE7379L, 0x08265E464C84C974L, 0xEC67F355C6E3BE7BL, 0x05A8BF507746521CL, 0xCABAA1E3A903B7EBL,
            0xC199639F0A6D64E6L, 0xE680C85653CD434BL, 0x87B9656878E9415CL, 0xEB06C0EEC6C86120L, 0x4545E58C133D2E6EL,
            0x6AA5835BDAAAB17DL, 0x843EB16DE5557AB4L, 0x92B5CFF85B46E8ECL, 0x246BD153F4B3CDD3L, 0xCE8AA159CB3D0AC2L,
            0x78A49D94A5697C01L, 0xBD3504584166FE64L, 0x2C289ABEA06329FAL, 0xA278FE4BB569D106L, 0x385C0F22DECFDEEBL,
            0xFE44C745A7A73BE5L, 0x5107BB0BC463F317L, 0x9124D6A54045E715L, 0xE63EEC2DFD7C6D40L, 0xB192B76D71B6EB54L,
            0x615A80B62E26A624L, 0xEFABD35404C0D980L, 0x87FC8AA76C504084L, 0x94BC639D5EAE9CA6L, 0xC6D9950989667D95L,
            0x9C3C215075ECF3C0L, 0xE00E45BA9EDD00C7L, 0x8E3A077C2DED92A0L, 0x180C6C876D39034AL, 0xB1E265BD20EAC59AL,
            0x02B45678EE4416B8L, 0x3BB043529C90C9E1L, 0x21FA671C4945B7C6L, 0x80008F9B2E71FCC3L, 0x82799CD6AB3A64F8L,
            0x1A2B97E4758C9E1EL, 0x8AA35524650F829FL, 0xCBEBD8076FFC36C5L, 0x98C055F927295CB1L, 0xE2C23F594E6A51ADL,
            0x64BF6640836F6037L, 0x2B33D20EE28F2F21L, 0x66D74CD256720168L, 0xAE1EAC36AA9DFB46L, 0x2548D6FBDC1F80AAL,
            0x3D111B0CB124EDB7L, 0x5415A20F4DD03010L, 0x0972A7671F829E07L, 0x934AA23FBD72CC08L, 0xC17ACC9DE0B7D964L,
            0x257F7853FCD7BD60L, 0x9F51165472F56FB7L, 0xE27B0B998821FFC5L, 0x2466011FEFECD2EBL, 0x837221C7E79BBF67L,
            0x2EF0A2110E8B114CL, 0x311A87501740596FL, 0x9BAC4BC3545ABC17L, 0xD9D9BBF5416D165FL, 0xA456C8904170BDB0L,
            0xB99CD546C64F029FL, 0x3E19552C5F768F1FL, 0xD76C36F3EAC008BFL, 0x0BE9B0EF2ADFB2C0L, 0xE099D3B5276BB233L,
            0x62221DA3B51EEA4AL, 0xA86ED4E6B4290695L, 0xC3EACBCD8739D897L, 0xEF853EA99BA436BBL, 0x1AC355D75DC033D5L,
            0x21825EC968846814L, 0xC65998B8B9C4EB0BL, 0x94AFC15F5F69DE31L, 0xF1080F2C5E25BA12L, 0x06F79B8C40333B69L,
            0x2DBE19A10D01A975L, 0xF90FCE647D1FEEEEL, 0xC0B7D49E9EDF73D3L, 0x752BE6837F80F5D4L, 0xCF5ACD66C3A9D0B6L,
            0x6450A38C37D125DAL, 0x86AD0D334D4C4507L, 0xC66DB22062239BF5L, 0x3D485A707445E378L, 0xCFACAEB72000EDE4L,
            0x975438F880456BA3L, 0x3AE8D40255DFB564L, 0x7AF66254096884B2L, 0xD00C9865E49B44B3L, 0x5BD1E997CA6778C4L,
            0xDF1B075126479F85L, 0xB697C791A08B6870L, 0x57F0891F1209809CL, 0xFC51277583FCFA13L, 0xF551026B5B9E139BL,
            0xC1F3DE5B21841ED2L, 0x79A08EA3D1636BD4L, 0x15FA4462B687376AL, 0x6EAA4CE26EDBF41BL, 0x7D21516CC8A2BD52L,
            0xEA24B5F5D9BF68E7L, 0xC3114CDDF3EA28B6L, 0x9825B2C894CAB544L, 0xBDA8F3F7FD69AA4CL, 0x3D85FF2AA5A61469L,
            0xB3BC58E48335081DL, 0xF836424CC24FF4EEL, 0xC48FC99A2FE70EB9L, 0x0CD680125EA617EDL, 0xEDF22D536D0D2462L,
            0x215FD0A92BC595A0L, 0xADCA3D6756B0B23BL, 0x5E829AAB51032234L, 0x53108ED7D1B5D786L, 0x465AB35DE184F0E6L,
            0x1B955103077C4560L, 0x91685C689987B8A8L, 0xA19B577112BDC5B0L, 0x04412AC0CB81F4E2L, 0x183A9CC8045A5E20L,
            0x2338EB44DF7AD60AL, 0x31A20F803A46C84FL, 0x4F436AD8A60F4122L, 0x00B9CA0277902AA9L, 0x72A0B5A98CAD8A67L,
            0x824F5B6AA9EFA97FL, 0xD6643F8981C316B2L, 0xE2DBA038B8121E5CL, 0x55B7CA2255B09051L, 0x271E7EC9BB5F13AAL,
            0x3ABD19142874AF72L, 0x912C0E83909C1D18L, 0x153ACBE2C4238B4DL, 0x4B3AC62C9C6ED971L, 0x7ECB7DE0E960D0AAL,
            0x275D29F8E36D68B8L, 0xD50AA91BD5296388L, 0xE985B86950F1F9CBL, 0x9A448E9DAE6BACDDL, 0x01914A2324A154D9L,
            0xEA76281FDDF872CFL, 0xFFC5207D2422046CL, 0xE6F259AA1C8368DCL, 0x210DDC8A452B04DEL, 0xC8C97057488C76BFL,
            0xBB7A70FDF3A9C269L, 0x13178AD6611ED81CL, 0xA0D5384E886CB836L, 0xB4A70407DA7B7C3AL, 0xD6E0521ADE4B471AL,
            0x9DDC946DAEE4C44AL, 0x84AA4ACEDE74E8DDL, 0xA6A86FE717E2B81AL, 0xD491DB2E002D4D40L, 0xBA43FE950B69541DL,
            0x34F9E6647CD4C022L, 0xADC60580747E012AL, 0x405888DD46C40469L, 0x1D2679F87012656DL, 0xF22E2C29901DA5A9L,
            0x0A08856A64D75F53L, 0x03A350CA865BB292L, 0xB2B822C5A0186E82L, 0xB1E859D43FF96CB1L, 0xE0006E4B01966414L,
            0x342483D5DB41CE0CL, 0x4014B0FC75A9BAAFL, 0xA0A3749E1FE3E398L, 0xED8735AD8EF74035L, 0x0B191FECC08F73A2L,
            0x7D536308882B961FL, 0x4A3F7A3E4684C99DL, 0x00479FA69A58CABDL, 0x9BB5E26DA6935CF9L, 0x3CA49FB0ED9CBCF0L,
            0xE3F290F1E5AD6EE6L, 0x668E5A4A3FF16D22L, 0x273F9C16B2DBBB38L, 0xCAF51C537915217FL, 0x6A24FF949CEB82C3L,
            0xCAE1F1EF4A9E28C0L, 0x95483787F3E099E9L, 0x4E9BC472786CDE04L, 0x3CB266CAE0CBD432L, 0xE2E40346BFD7298EL,
            0xAE961353B24EAE20L, 0xA08D4F9112F8E560L, 0xCC152439B0AC08A3L, 0x51F9C03DC9C01A0CL, 0xD131E0A029EE35DBL,
            0x1498C2618B6F4733L, 0x71F878D0353B0CFFL, 0x183BACB6115B2C81L, 0x2C1DE757D4304BAAL, 0x4D2C684106EA9B32L,
            0x57B2DB20418EC4E4L, 0xDE2EA8083ADB0D64L, 0x0933C0EB4E575291L, 0x7F222204DB0A67B8L, 0xA528AEC950E03C34L,
            0xE5C4485956133319L, 0xA3AB6AA0C541DE2BL, 0x1213B717C533979CL, 0x3A9709EE3AE5DECEL, 0xE123FCC1350CBEDEL,
            0x21C9207730D33B11L, 0x81B745E74CF65344L, 0x3FC581BFF8CAFA9CL, 0x87BA1B3DBAB5E305L, 0x20350194C8FF7B7BL,
            0xDCC4609F738CD0F7L, 0xFB218717B4CC8FCEL, 0x4A11CF7893B50264L, 0x85780F4A7E732C25L, 0xA5DFF339327E7078L,
            0xAB400C1DFE73B366L, 0x5CF50F5D2B5C7D0BL, 0x1C23C7A2E0DE9575L, 0x9310BFD66B61B5D1L, 0x25489C041D6B07F6L,
            0x0C54EA7B8EB75E36L, 0xAA206C84FCE12CDCL, 0x603C2E6F4ABEF76EL, 0xD2C79DCE1CFE10A6L, 0xFE7A593F8FC15F83L,
            0x23A378635B901A7AL, 0x712B1CD00010536CL, 0xD168AB2A8A30E27AL, 0x77FE60F41AB5F566L, 0x304D717F6DA2F706L,
            0xA7950BE44CE5C030L, 0xBF19F45CBE7877D3L, 0x690B31994F8258DAL, 0x20F1DCB78C3CA5EEL, 0xF9B677558D274C3CL,
            0x35155A33F117AA34L, 0x0463F288D157C25AL, 0x4C8440EB5956EFBCL, 0x7DEBB4777A74E13FL, 0xCC53D716A9181647L,
            0xC8B5A2EB9E5DCA11L, 0x32AFBBEA29C8C0BAL, 0xC7D665844CA91E6CL, 0xADE8001949E46E20L, 0xACAFA2FDE184A14EL,
            0x1A94D9F442F5AFD6L, 0x3B89FE2C397D1E0EL, 0x79C03729D4807DC2L, 0x76640B24D075993BL, 0xCC3030CD961231C8L,
            0xF33F066EF548BA59L, 0xE650F745D76565E1L, 0x4E7045D3C7A72ACFL, 0x2AE92F5D43121C73L, 0x8C11D8CBF6E4A584L,
            0x93A853C5A6FB50E7L, 0x376D5140F68CF402L, 0x7FC8A2DECD305E8AL, 0xB644C8BD20AC6916L, 0xE466F3B458B2263AL,
            0x2A28DDE90DEADE41L, 0x49D682A38B190F75L, 0x3D8E6E8510A0A07EL, 0x57242239DABE7FBDL, 0xDF24CEE742476222L,
            0x132143633CB53B74L, 0x85ECC54BB9AA82E7L, 0xD2B73D12226EE596L, 0xF5E0F118147D9C5AL, 0x60EBE31C90919002L,
            0x6182D88AC7FB104AL, 0xFFEA5A178B291430L, 0x926A4E0E726DA7ECL, 0xED84AE8842EC4C7DL, 0x1BFC4DCBF28E75C6L,
            0x23154CDBE005D081L, 0x61B4AFD921D071A4L, 0xC2437117A05C1B04L, 0x7FFAA7B53BCD7D2DL, 0xF01FA550EA050E8DL,
            0xDD3A7A97C727F8C5L, 0x202FF086161C35A2L, 0x63098F64C3519BE0L, 0x8B6B9080FCEE6E2CL, 0x8E64F0E0BAD3B0FFL,
            0xFDD124FBD9F47BAAL, 0xFC9A8120EAC4F4DEL, 0x4227B4589CC5520AL, 0x4A3DC7F3BE4179A5L, 0x98A2AEBC93C45B62L,
            0xA48AE951EFE36219L, 0xEC8A8F8035E814EDL, 0x95E6A0C1033D5E1DL, 0xB0B41A6A52ADB3E5L, 0xBDAF0ED0FD9F5909L,
            0xF474564301C7213BL, 0xCC5A0ABDD7671398L, 0x0CEED4D537DE1343L, 0x58E79783D661BE84L, 0x82F9B58A523EEEBDL,
            0x25F38588E5C2E805L, 0x0E855F5CE0F874EBL, 0xE53D644BD96DFDCDL, 0x4F5614E51D91AA9EL, 0x7A40E65FE0689640L,
            0x920905E1FC1DE44CL, 0x3986F140455FF6ECL, 0xC1C660A105050DB8L, 0x0C99D664045B3390L, 0x14A8E7460F9BA7B8L,
            0xDC13773E39D2983EL, 0xD4CBD4F4F016A510L, 0xEC00CEB009762A51L, 0xBC18717E5F315789L, 0x44E0FBC21A20374EL,
            0x77553337365A10A0L, 0x46CBE73BF081F5EFL, 0x879D223238FB8588L, 0x2ED76C189342FCE4L, 0x6A52FA2931F17C56L,
            0xAA94DD9201639414L, 0x08C66CEE5400588BL, 0xA48E50D8A6D8F85CL, 0x6C308A4FB4A6D75AL, 0x10F12855EB725F23L,
            0x0A4AF7E54A54C05EL, 0xAD1836B1BD44AE3AL, 0x2CB78F5A79A68D95L, 0x9173FC9659E5C5E5L, 0x538F503FD8EC25E5L,
            0xE557D988A0F0B5FCL, 0xDBD9B79F0DDBC770L, 0x197539F52E6A1483L, 0xAF5546FDEEFDBB80L, 0x7A5CCEE4A4B0BB30L,
            0x4DE3F2A108E673DAL, 0xF222629A33D342B5L, 0xD4119768B71151AFL, 0xC1473CABD74275C7L, 0x37987FAB50B6A08EL,
            0x1557F3F97AEAFB39L, 0x846A681263A753F8L, 0xF135393105F16DA9L, 0x7CB14577C1C96493L, 0x29C08567B365D088L,
            0xF65E476829855207L, 0x2BB66190B0589D8BL, 0x334AFBEAB5FDE105L, 0x06BE417FB2F4D2C6L, 0x579274D2719CB915L,
            0xA849635CEF43C8FEL, 0x76B6C0D944131C14L, 0xD89B3F56BC77FAF8L, 0x4D4917666C97A18BL, 0x4F5FC69B30B119C9L,
            0xDC35C0E4B1C0BA4AL, 0x45815081B94D1F7AL, 0xB6803326D20254E8L, 0x896A95118AF5D879L, 0x541AAD61B2715A13L,
            0xEBBBA8EB36C6E5B0L, 0xAEB7FDD53512EFE0L, 0xBE6EABE388FBD437L, 0x39D468522C9A1578L, 0x59BE957699B964FCL,
            0xC7E10451F916C4C7L, 0x9AA1B47EF1A7CDDBL, 0x7D613F6DDFBA6E2BL, 0x8877E676DA316EF2L, 0x39F3618E4F7A622FL,
            0x248E51D7EC59FA3FL, 0xD8A85F3C24EEA7CAL, 0x086822F2794230C8L, 0xAEACD80D8973E1CEL, 0x3940BEF8448D6FD6L,
            0x5B3D573BE430545DL, 0x2A0269B842F92211L, 0x67F6CEF5674BE3A2L, 0x8AFACBDAAE9E937EL, 0x5F09D81D782C1722L,
            0x51D4F5458E70F4ACL, 0xE775C3AE6F4AD959L, 0xF6F195978FAA5893L, 0xD060650ADABEE18BL, 0x60F9E77A8E0179F8L,
            0xD5BF7116B63F05EBL, 0x0E90A6E36A906846L, 0xCBF78101940B2E85L, 0x924FF21EA192314AL, 0x5FB8FD40E3A9D58BL,
            0xC8C77DDAB415842EL, 0x1D4AD13AC639FFFCL, 0x24F9E1363D0E73A1L, 0x589D8EC71B86F1BEL, 0x47DD041EF026381DL,
            0x3FE6BDA50FCE229CL, 0x54A8BC27D4F3F099L, 0xE72D7AAA97B735CAL, 0xB84D56449A372F35L, 0x4E1A886CDEA27BDBL,
            0xB82A42B0A307709FL, 0x2C83ABC55B0DE752L, 0xE52D278EFAC9C03CL, 0x2F930595AD80E635L, 0x56C37AA975251064L,
            0xDB1514CA87F45740L, 0x26971EFDAC0A852DL, 0x025CCBA2C6605FB7L, 0x5CCF739C18356995L, 0x8C56CDD844B9CEE4L,
            0xD69F5AA9EF969210L, 0x50CEA651833A0EC0L, 0xA028F5281139DCC9L, 0xBB8C6E98777AED5CL, 0x9150F672D75B9F0DL,
            0x3EDCE4602787E104L, 0xCCDA3D38368470BCL, 0x343EA5F0C3AB5934L, 0x6C31C2FBA39A39BCL, 0xA15289684C59C8D2L,
            0x9A9603061B04FABBL, 0x4ADA004513406A4FL, 0x09CFA9F69808D1C0L, 0xD974DCC839155C98L, 0xE37803F15DBF8461L,
            0x0DF53D47957B3006L, 0x05D3CCC4AA14B496L, 0x478D9E9AA2CADCA5L, 0xAC8CAF224F5CA281L, 0x86BF665A7D53778FL,
            0x6E209A5FCA434CA7L, 0x3EDD3BC0AC31632FL, 0xE8A2B500FFD83164L, 0x1717067F697EB6A2L, 0x7574C99AAAB6B7A5L,
            0xBD7589F9E0414296L, 0x95E2CF786658AA35L, 0xABC854DAC01CFE58L, 0x341954AAC4CD0815L, 0x027CA50F016C55E8L,
            0x3EB0A80D351E05BAL, 0xD17372C328025A54L, 0xB314C3087FE44629L, 0xA556D608E77AC7A6L, 0x8E5330C10B93E046L,
            0x429B0E62699FC026L, 0x06685E98FB3B03D2L, 0xF838FD7A860212C6L, 0x71E4F4C99884D2ECL, 0xED5BAAE7218EF2ECL,
            0xE2D4212D9CF31813L, 0x08A3C9DAD580C1FAL, 0xB60CF612DE69B5F6L, 0x17489F45CEB8FF3CL, 0xA3A4374FE833D599L,
            0x2845F2EBB917B130L, 0x99FEDC96ABE04096L, 0x1DF3EC88E624B33FL, 0x9D04255EBC6AD089L, 0xF0C603345AE4D55BL,
            0xA8438C807A38B9DDL, 0x2A9C1CB2F65EB720L, 0x3F5C4BFAFFAF079AL, 0xECF5E88A98FC4E71L, 0xBDCA0821C4292EEAL,
            0xA782CB2E848129A5L, 0x783638C556440464L, 0x09ECF4AB3D0347B6L, 0x3FBF52B946A06264L, 0xAD6B67D06CE2651CL,
            0x0528606A6938C6F8L, 0xCA8A26E21869EA39L, 0x58AF39057DB7692AL, 0xD7C175677159D07AL, 0x854C2F005E2B90B1L,
            0xDFDEE7C57F42E59DL, 0x6D6CD4AA8FC3284AL, 0x15E714DE3F2E60BFL, 0xBDB8CBB3422CE24BL, 0x9101CFFCFBC2531AL,
            0x02430F68B886A831L, 0x682B7DEB969DAE9DL, 0xFD88DCC349BEC133L, 0x54C8831B3453F6C4L, 0x70ED3B1EA684F122L,
            0x5EE99654DE07C45AL, 0x35E628D027F9981FL, 0x77EAF786DE54A30CL, 0xB7D723A05C7364EBL, 0x2A4EA8BCCAB707F3L,
            0x529F0276DECCC6DFL, 0xC20D1474776FC285L, 0xF3262F5B88CBC9D3L, 0x41486C06694D6583L, 0x87C1DB3F8A5FB573L,
            0xB4321EED5F974BE9L, 0xA80953CDA57D7AD8L, 0x4E1BFC44EFCA1DE5L, 0x40C24AD8C996FE5FL, 0x83165EEACD9BA45CL,
            0xB2D1D2C611BFF118L, 0x3723963D63385D96L, 0xF5A587A5C5B2043CL, 0xD7F2157E386B33F1L, 0x2053C57EF8051A8DL,
            0x123616777AF47FDDL, 0xD2B6BD9BBB110690L, 0x5A242D096EE6306CL, 0xC30ECA7EB20B31FEL, 0xB9350CDDCB9A222FL,
            0x4743806C451489E0L, 0xAC445C88B85C6247L, 0xEC9DBB4FBD0E0C32L, 0x3E42E5F0638D6BCEL, 0x27E0A606CF212704L,
            0x2F1DA6EB37A6E7F9L, 0x5BF03F0330198E68L, 0x6621FA8463212DB1L, 0x38B686616CBE95BBL, 0x5510EF7C6AE03B73L,
            0xD8CA5E88067D4205L, 0xA73A67157A66BEA9L, 0xDC556D97BADE0680L, 0x285FCC5C81C07DEBL, 0x0D0DAFCEB059B98DL,
            0x63C97BA69693B7C2L, 0xDB91FD578C381F9DL, 0x2EDE500AA4954DDEL, 0x14499CBDFB593AD6L, 0x6DB72534690D74E8L,
            0x72EA2A9F02D2317FL, 0xCD8E52FBA5DEAB52L, 0xA2137AF8C57B6279L, 0xFA9561B3D2127DCDL, 0x99F174C7989C764AL,
            0xA6A176457885AE59L, 0x27A7B9734C0BB489L, 0xF6465FA4D905BB07L, 0x214522E4393870ADL, 0xB463885664B813DCL,
            0x295218D708B04E88L, 0x8ACA5A337C579B7EL, 0x1B89446E2ED73DF8L, 0xAB8DA4BF95646497L, 0x9C1DD3B82E9F2E98L,
            0xEBB752E703100E06L, 0x0DECC242443E6F6DL, 0xF780180CF84DBA60L, 0xEC4EAB9AB9ECC3EFL, 0xEBD6B9E619F97349L,
            0x1CB65CED9DE73ED5L, 0x4AE4E0AD8ACE67AEL, 0x65213FC823013C8EL, 0x1B6C45C466676BE9L, 0x9058254AAC43B254L,
            0xA73B15EF0D298557L, 0x6A52E2F2E8274433L, 0x15A42BE5D8A526E4L, 0xC78DAC6D791D037FL, 0xC5C7EE04368B2A99L,
            0xABF3B4AD3F40A88DL, 0xABA9DA6F27FD9438L, 0x82FED7E2321A5DACL, 0x34724C1EE39F535DL, 0x74FD13ABA19696AFL,
            0x43E644C582649FC8L, 0x6EED5739325C478AL, 0xC1054F9959CCB8B9L, 0xDD33ADDD43CE65C8L, 0x0BE6E3A219C1D87FL,
            0xE768A7E3ED454BF2L, 0x755A0D2ED90D9FB4L, 0x1ECF834DEBF6A312L, 0x136BB9B0D8DAA7B5L, 0xBB8B44627C57B5FDL,
            0x0EEAAB44566D624FL, 0xA86C40DC37BDD309L, 0xDF1D7DC229DBFCCFL, 0xEC3E4BBFB23A7457L, 0x344CCA42591D36C2L,
            0x9BC1A7BF04C21BDFL, 0x396CFB8C5883112BL, 0x7B067E5F34D777D5L, 0xB313F1FD14337904L, 0xE1A4A6DA4D03CD2DL,
            0xF0190BFC79EC283BL, 0x05589D19C0A0A143L, 0xB89BED2DF7007A8EL, 0x83CF1AE2E97778ECL, 0xB4DD761623F66FF1L,
            0xB0F607AA96F29280L, 0x003BABFC4E0C9C62L, 0xC4F0BA54CCB711A3L, 0x7FC8B966DE50655CL, 0xF5D1476C3992F6CDL,
            0x695F36972EB23747L, 0xA787C23867D6C1E3L, 0xC9BB3304D723E191L, 0xE9F9E364F5549663L, 0xA00AA8DC87541658L,
            0xCC00E8B64B51F0F1L, 0xDD8D3E21055D32CDL, 0xBC122AA51DDBC945L, 0x0A4480148E3A87BEL, 0x06A06A7D3621A8C4L,
            0xF65E21280296E5DAL, 0xA0CA51F33C7A9D55L, 0x54E873B8A90C47B9L, 0x75B237F624EDD12FL, 0xA98A487346A2A3B0L,
            0x7FE5F1C8D438C3ABL, 0x7260E24D86E8C9E6L, 0xE882574A935D7460L, 0xF2C99F890EB4475DL, 0xB547E19FBCF21922L,
            0x35CAEB4C4722A4BEL, 0xDF9DC0388188808AL, 0xC0F609EE9A2A9027L, 0xB2879D8F7799DE34L, 0xECFF7F1AE697A35BL,
            0xE6DAE6B82F8EBAE0L, 0xD9FA6C8906FA93F1L, 0x358C13397D9C7209L, 0x84069E150DAE4180L, 0x01A9D96F6141D7C3L,
            0x5468E88DB7B8D5DCL, 0x40B26306ED6024CCL, 0xD471CFA638EB15D8L, 0xBA2C88F91BFE6C3CL, 0xED38D9034D43252FL,
            0x98F892B4D5EB753EL, 0xDB1E6A70D6306E7EL, 0x6B987CF8B099ACADL, 0xC82E13D39E0B287AL, 0xF6B2BE3183A04D8FL,
            0xE6E03689509223BFL, 0x785DABFEC3762CC4L, 0x8166FF6B750038F6L, 0x5D4783CA90239369L, 0x1A93C2BE64D4E51DL,
            0xB4989B3FE4B394B2L, 0xBE931DEC82197231L, 0x2674D8A7975E1F4EL, 0x251975F0B8848495L, 0x65499B172A827F9BL,
            0x96519EEE067F19E8L, 0x659BC299539C6F25L, 0x39B6D57DCDB08423L, 0xCCD5C55D5F94F74EL, 0x0C37F8CDE655C435L,
            0x3F95E43542D2A811L, 0xAB6289B84D44E984L, 0x154FB28CB7B0C137L, 0x08003A912A2657ECL, 0xCB90D843D6FDBB82L,
            0x9575D97042031C3BL, 0xD107CAB69C63F092L, 0xC65F5755D9EB5740L, 0xE973497C53A6C38FL, 0xF447458DFE1ED1D7L,
            0x31E46747C3D1F1E2L, 0x1A047C537BB690AAL, 0xE24A03929A82EA84L, 0xD82DBDB7C5754C75L, 0x40030A9E23AA03A3L,
            0x7B3E526BA0001C0CL, 0x3F3B2A93893671B7L, 0xB569F70FB6696F81L, 0xF020226D3237503CL, 0x6CCADC4C858B4812L,
            0x6B83F592AA372BA1L, 0xBB7A1DF78B5B6EC3L, 0xB24879F307929D39L, 0xA44C921FFEF45BDAL, 0x6DFC19A65ACE7D2BL,
            0xD6532BEDAEC41B97L, 0x895050FE50F543B7L, 0x9CEA0BCD63D8D0D5L, 0x0EA32236283A3A46L, 0x4404BA737BF1147CL,
            0x23955CC2282AE620L, 0x3293FACBB7A168EEL, 0xE4B4C39585EF71C0L, 0x81423C07E65ADAD1L, 0x7586477AC1221719L,
            0xAC73647FCFEDC4EAL, 0xE1C504F3DEFBFC53L, 0xD7563430219F92DCL, 0xBE73B3E4BFA165BAL, 0x55013E31249B5F10L,
            0x66650E96E489E2FFL, 0x4DFCB7900420720DL, 0x9828597E671582FEL, 0xF642FB8693730E0AL, 0x74CF59689B7F709BL,
            0x1BA56D143E371F82L, 0xC9C9DEA0B687747BL, 0x58B3309B8170740CL, 0xFE1CACD4CB4202A7L, 0xC69ED92920130ACCL,
            0xFE810561A2A98854L, 0xFB4ED89DA3ABFE34L, 0x3E8047F50F98ED65L, 0xB1A7EC0648337CF1L, 0x186AB04A000FFE6CL,
            0xE34BC1FF59E75833L, 0xC50C630F2FAD0729L, 0xF66B7C06347CE7B3L, 0xC04FB3DACF7A9ADCL, 0x69F7F13964B4F82BL,
            0x0B7EC65FFC2F2EEDL, 0xD861850ECFF8B711L, 0x8AA5B9E13E4F95A8L, 0xD73EFB19E14226D8L, 0x4A95233A5693E22AL,
            0x029B960BB72DA90BL, 0xA257AB9C8D269BAFL, 0x5F5967A794C427F3L, 0x1F69EC73A37A35E4L, 0xCAF4E5764D17EFABL,
            0x21D687B32E7E54E2L, 0x62233E91717DE6D4L, 0x4E587B200A2DC704L, 0x6D2EF5EF5AC3A142L, 0x6AF158F6CF8D23B7L,
            0xF2996E2F5F6BCB57L, 0xA7E99CA0834575EBL, 0x2872A3E753893AF0L, 0x85F5D2FA9D3491DDL, 0xD501AE14F28E9B02L,
            0xBC4856FF58678145L, 0xC1BBC557F7E4B967L, 0xF8994976F7111E32L, 0xDA380E3058D58A66L, 0x51BDE09C572CD41CL,
            0xA5AA948CB0F08BF2L, 0x4D28677EE2ADDFF3L, 0xE6A5F37D29A5E2C4L, 0xCAB7382B591F1B2FL, 0x1C3EEEFC5E80E5B2L,
            0xBA809B8630D5B333L, 0xAB6033436106DFF1L, 0x0FCFDA00A2DF7582L, 0x78FA613231DAB129L, 0x454FBD346706E28FL,
            0x6FEDEDEAF06C2A7CL, 0xFA681FAD3C63D436L, 0x99EB68C5CF1229FAL, 0x2B1CE20B9F018221L, 0x83373A5A2F1E120FL,
            0xC44066EC845CDD9CL, 0xE01EC5650EFFE0EFL, 0xBF9965DC6E7EEFB3L, 0x821A82E8D445EC14L, 0x089EACE220B6E786L,
            0xA3FB01ED5BDDAE3DL, 0x1CB87C0B48FD2C35L, 0x9A2CC4DF8494BA99L, 0x0B79BAA4CE38DCDEL, 0x70026E9382805605L,
            0x0E100EA5ADB68272L, 0x971E938A1D90FF77L, 0xE32ED01D314B227AL, 0x147DF51DF231631BL, 0x8801C04653B12F00L,
            0x714B6FD7487CDFAFL, 0x493DAA3229D74F30L, 0x0E8EE02C4527FC0CL, 0xD32A95CB65F1FD77L, 0x4BEFB58AFEE47B15L,
            0xEE8D11458C47CB26L, 0xB52ADE928BA5365BL, 0xCC9C1CDA01CB0EE3L, 0xC987CEFE0AC39C31L, 0x67B74D0281AEAA6DL,
            0xA67C5BBFB3ABAC0CL, 0x035C54358954BD7CL, 0x74D61070AC52A463L, 0x6DDE8A787103D6CEL, 0xC82EF638075BD765L,
            0x63AEEAE23BF85195L, 0xB5116BE9AF6FD846L, 0x8889B1897387DCE4L, 0x9520ED1E9BEB78F1L, 0xD8A53B1A6726FBD3L,
            0x3BBC3EA95AA7F058L, 0x2D0896A73647F06CL, 0xBAFDEDCC2B410BC6L, 0x24769615E128C8A1L, 0x52A2092901E211D9L,
            0x07E0A5DF0ABD7BDAL, 0x9241BA7AF22F8C09L, 0xB821659BE01100E1L, 0x087F12ACE6A913F1L, 0x2CC154384890CF2EL,
            0x332212FD0D4C93B0L, 0x1AD3986A5ECEABE5L, 0x42CDE963F0153516L, 0x71809460427BC207L, 0x41E21887AE6C9187L,
            0x299A3E69625EA69EL, 0x733E601AE456A4AEL, 0x909F5BA7F04B5CF6L, 0x450C158AA4BD9E77L, 0x7FDB09B1511E0414L,
            0x4753FA7B2DDE84F2L, 0xB7D6144F90015E15L, 0xD0140299117F3504L, 0x4114B95F6E3CAB17L, 0x60AC28DCD62A4913L,
            0x0F296A2620172CD8L, 0x04E31164C35E4F15L, 0xE466C33A2B4DE535L, 0x5C6D64A8002C13A0L, 0xDD066E73F4DF1124L,
            0x86C836C4526EADF8L, 0x1A62C12721FA52EDL, 0x085D0E450C57F928L, 0x13E74038CB0641A0L, 0xE154BCCDB6C3D0A6L,
            0x1DA4D77027D4F922L, 0xBC1E3D9E3047CB1DL, 0x4DFF95B959371D49L, 0xFD9D55FF33AC5C45L, 0x16B318D74E485BD3L,
            0xA518062F2C0CCEFAL, 0xD370F45AC2DBA449L, 0xB8655A77918B7AEDL, 0x23A7BD7C80AD5A0AL, 0xEB849FA8A71305A5L,
            0x8F8793D12DFE840AL, 0xF3B0E840805374ADL, 0xDC2051931279BF13L, 0xFF26D41EDEB16717L, 0x717ED99B9E4D4A87L,
            0x463F8FA61C9E06CDL, 0x51F6B0E5AF93BCEFL, 0xB22964CC704C363CL, 0x7D4D49D1973B14E3L, 0x836EE4A0F1693D56L,
            0x6741D42B00C3C409L, 0xD0A54661E926D116L, 0x68F9FA3FE742CD3EL, 0xEE04BE4DF06E52D1L, 0x2A1D652DB6466C28L,
            0x0B5005E765C8A126L, 0x3AF7E4D59E46CBC4L, 0x1061DD78BB1D5A4DL, 0xEEBB9EBC8A7DE2A6L, 0x53D2572E2B09100DL,
            0x660BC66151156F08L, 0xEC9C43343637B7A5L, 0x783C0D74AEC411E0L, 0x31465DD042BA246EL, 0x2737469DAC0A7F91L,
            0x2F02708242092A01L, 0xA8CDF652345FF5EFL, 0xFB5EB1C305EF2B18L, 0x822E768EB6D0F2B3L, 0x0584B80F51416C9AL,
            0x39973817A390D296L, 0xC2B47076DEEA9063L, 0xD0D3A22E8B43E0A0L, 0x86887AF8F86F31C3L, 0x62E5CC82D2C63E7BL,
            0x44BE1B892CA74DD9L, 0xE23C626B617241C0L, 0x49A299A7B01AFC26L, 0xD527FE50AFEF379BL, 0x71ED760412001016L,
            0x2DBDCC72F2C0C73FL, 0x4CB9B1B8637D9A4DL, 0x0B2C99130DED34F9L, 0x247681315A7C78F2L, 0x0680CB501629E2E6L,
            0xD810F1F4C5DF4862L, 0xB62BE7D66825E997L, 0x3E3E69F9BEB821DEL, 0x241F00D917A2522CL, 0xDBBA9D5D888BBC38L,
            0xCC182794EE342CA8L, 0xCC70C7D63271428DL, 0xACC71AEAEC99408DL, 0x18F1C6412B721F8AL, 0xB8B5627CC9BC3B04L,
            0x673F5E52062C9FD5L, 0x3568F9F6079AD51BL, 0x91DE1A66825ABC84L, 0xE9FAF905F05C45DDL, 0x7C47C21AC68426D5L,
            0xB46B15DDED133F53L, 0xC23D2946A8C26081L, 0xD83AEDD533BD02B1L, 0x6A2272A1630FD858L, 0xFB65FE228B2F1733L,
            0x8B75BD52FE553914L, 0x4293B97221C83080L, 0xEB99094B46EDE87AL, 0x74696260F6DE248AL, 0xC691D150E607AF4AL,
            0x7027BACCA6F4C640L, 0x1904AF346CEE368AL, 0x3748C01D0FF56191L, 0x96A17AC1E1D1052FL, 0xAE9E099144BD3E8FL,
            0xFE54DA7D995E0131L, 0x536F42E0EE714CB8L, 0x6E04F25C4505398FL, 0x0E6B5F4E8E3034A9L, 0x6C3D6430836F7AD2L,
            0x12BCB3A85AD65DC3L, 0x311F9394D74E7600L, 0x3561BC69BCA2469AL, 0xB30D97AF5842A231L, 0x21E9E49F33B5B216L,
            0xF8F23C36E2468B1EL, 0x5809DDE30E8070B5L, 0xADAE4CB521938358L, 0xF2F5762C824CC44EL, 0xD01D250DC3B4BF16L,
            0x624308ED0240D645L, 0xAB486CE83A00C4B7L, 0xD617A2526047C312L, 0x4CCBDC9EFE62F267L, 0x7FAC014EDF76AB83L,
            0x4E13B5F998F5A48CL, 0x6DBF4B5770A4DB29L, 0x6205BCF02398DEE5L, 0xFC530F9AE003B4C9L, 0x5DCCF957E037CA84L,
            0xAA16BAC64DB488CEL, 0x4AEA65638F397500L, 0xBE2F0C33AB678F07L, 0x14546A6EF50B119FL, 0x408F2DBA6E3D4440L,
            0xFA53119F50771B44L, 0xAFDF341FF637B574L, 0xA2F51C784F01AE5AL, 0xFBF63B7BA3BB9D9EL, 0x015D76863934D421L,
            0x9D347CB0B7A9F886L, 0x16D200DE8661D508L, 0xA992136CF3C69BF3L, 0xB75DDE40EDF78DEDL, 0xCA012AF5074C5A24L,
            0xCAFDA72B8C324482L, 0x9FC5BF482E8F738DL, 0x25BA4C5770892128L, 0xE3B2440154D4031BL, 0x8EB80F8B95E35901L,
            0xE2BDE6AB4483E794L, 0x622CC2DA7F2BC101L, 0xA62F7B014C1245D0L, 0x0E5590DCE6978B48L, 0x83A520F63D11EAD8L,
            0x39ED719A4275E217L, 0xA483721F17016235L, 0xE54D035180118007L, 0xAEE0F2765088D3ECL, 0xB845687323CDDB81L,
            0xFDCCF3378FFCFEFFL, 0x17EE70A0A5398B7DL, 0xE5D521E58719B872L, 0x2B0975A246824611L, 0x2EF6F55F960D0C17L,
            0x0B41BAC5B84A4D5DL, 0xB8B1C3349EFC43B6L, 0xCF7BC932FD845DD5L, 0xA9B914389560824EL, 0xD98C7A53DE99C8F4L,
            0x4CC6A4AADBAE1C7EL, 0x4A17867437C0E9E0L, 0xF1604E15F5D63456L, 0xCA01455574039D8AL, 0x33E01B5100572E22L,
            0xF3C25C833D1D6E49L, 0xE5DF8DF141B524EFL, 0x6A161FBD37F3C306L, 0x612B3BAFD74968D8L, 0xFEE74EE4F60E2C71L,
            0xDDA7F631B67C165EL, 0x9F01C6677E0EEED6L, 0x70233BDBC8A3CD53L, 0xBEF9C72D97D3358AL, 0x06C9113CD1D3C725L,
            0x1DE455AB8C7D850FL, 0x2A04CBD36215D78DL, 0xE4DF38BB6F501356L, 0xDFDA3CDFCCA10FEEL, 0xC1139C7BF1D6B9D1L,
            0x2E4B812A51BE9CE2L, 0xFAC1EF7D6488CB2EL, 0xD12A3581D63756C9L, 0xA912FD177CA746EFL, 0xDAB5E308B631B15EL,
            0x11CBD2CEF0B7BF44L, 0x36B8762A41A88B98L, 0x4FB14C4B1E9FD9CDL, 0x1751F3760596A859L, 0xBC48755EA10B322AL,
            0x13749255773C21C8L, 0xFBCFD042255A9D89L, 0xD311A2F86DECC442L, 0xA6B03B285FFEF093L, 0x9E481E985BF9BB42L,
            0x0C504FE712C8855EL, 0x5567AB7EF06C29B9L, 0x5A19EE7E1F52E559L, 0x1165ED18416278A2L, 0x08ABB3D5BF3B3B47L,
            0x016B7FA09A0829E1L, 0x0A964D20DCA91BC1L, 0xAC6392CD8F3C22A7L, 0x3DB089DA8F0B56E1L, 0x4F064B289B11F7F4L,
            0x5BF1466A1ABF73FCL, 0x2198DA99798A20ECL, 0x64E98C05A5E6C094L, 0x46A771F3DFF7DE19L, 0x0F5E138349460DEFL,
            0x8F495B2AF499F1D7L, 0x7D2C3C49A1B964F2L, 0x74004A1CAD2B4573L, 0x948802B1755D2E34L, 0x0D13F4B4393717CFL,
            0x92CF15AE47351C60L, 0xDC49FE796020A57CL, 0x708E7EAB3CAD2162L, 0x7E2C6B6E4AFE2FB2L, 0x7E084410E9FFEAF5L,
            0xEC907668D770AE92L, 0x25662B041D21618AL, 0x80DAC3F052CE2487L, 0x75F42374FA78FCA0L, 0x2C882FEE641AC3D0L,
            0x9C249EA4DB410203L, 0xFBC4B652BF58B471L, 0x3EC3F7E58325818EL, 0x7A69E92045E9181FL, 0x5CB1F553992B2568L,
            0xE17D5D243DD63AE5L, 0x41939EE77FBC4ECCL, 0x0C5765E414EF828EL, 0xD563E14DD82E01DFL, 0xEADE352FBCD8741DL,
            0x04690B7757CBE729L, 0xBBC86EFB9A305DDFL, 0xBD0075F17F04379DL, 0x70A7D3114B38ADCEL, 0x50DA4D9DA706D05FL,
            0x677E1761B95B0763L, 0xF1A71474DEAAFDA8L, 0x34E9A39A852F1916L, 0x5FDC168D9D2D5873L, 0x208044F7ADB25109L,
            0x2F2513B0CFDF68DCL, 0x04B33C07E180B1B9L, 0x49381A575F96AF5AL, 0x7EA229823C0A7AB2L, 0xCF2E6BF923375132L,
            0x428C0F0510D26E8EL, 0xFD2BA028F65E78DEL, 0x910E48F65BED86C9L, 0x9E01A005FDDA193EL, 0x6234CB83811AAF35L,
            0xF6AEA21E2F273AC1L, 0xB75B3A16B9DCFE11L, 0xA5F16BEB9CDD5BF7L, 0xA62F3A5E37361B0BL, 0xECE12DA37F8DCB21L,
            0x37A7DE5F54B2F6BEL, 0x8C571325593BC4BCL, 0xB78E9FCE50966561L, 0x9222C564512BA31CL, 0xEE405E44982472C7L,
            0xE26D96AD66719594L, 0x089115B19F142AE9L, 0x675095CF4144B9B6L, 0x5B4A46BE7664697CL, 0x6493CC25E5B59FB5L,
            0x8A7EE39E70E45C72L, 0x71ABBD253E114AF8L, 0xFAF9B526A2E49055L, 0x3A773F1147D2B249L, 0x775449C8B6A66AD5L,
            0xF9E818190BA62F5AL, 0x9CCC4E653037370BL, 0x12A5B51D97A3436EL, 0x57B0C3B71997A830L, 0x42E2D4049A80A764L,
            0x364FCE6CB312CAEAL, 0xAC08FE7AE728D77DL, 0x459037C8F3E79253L, 0x6E8077A579AEBF90L, 0xC5EC8D092C71D565L,
            0xA7C84B4579496A8DL, 0x344B78893D25FA79L, 0xEF3423704E9B3074L, 0x023BA4FB1CD689ECL, 0x4613EEFEA2266038L,
            0x0E604CD51CD73E39L, 0xACAD3A719C755F1FL, 0xFA625A65C2AC36FCL, 0x58566B15F817BD9DL, 0x3182C3D1752585BDL,
            0x7A2E74BE453CE1C1L, 0x23F6CD8BA5C9AE76L, 0x9B500981CF4731A7L, 0x8974C9AD97B43B32L, 0xF50C0C74CE6A2C8FL,
            0xAAED36DB7211F932L, 0xD398C06919E7AF8DL, 0xC227423AF6902F80L, 0x59D2864E133B4AE7L, 0x900B594D0337E9D5L,
            0x5F0B47DB67119F9BL, 0xB1A25E4F0341A03CL, 0xE69526BEEE98C8B0L, 0x4A65880F239EE2E0L, 0xF5971A9A1A3CEA31L,
            0x8235D0FC4E0012DBL, 0x28E454A7C6A63006L, 0x88638C83205DE40AL, 0x6BFA8AF29556E10AL, 0xFD71F9939703392AL,
            0x2DEBBA9803E5BF14L, 0xD4CC298AF46132D0L, 0xA2E6E4A52F834AC0L, 0x7067C77AA3F3D2FBL, 0xC339A79CDE07BA41L,
            0x8C5AA925ECAC324BL, 0x050904DFF270148DL, 0xC9B16CD1CB7EC122L, 0xDEACC0A2C8507E90L, 0x585A715DC7BA3E42L,
            0x6E7D0146F853EE54L, 0xB9C2E4E70908BDA1L, 0x6C0B2367A7A3B842L, 0x3ACC0D83B2039D82L, 0x9028470D2482D4E1L,
            0xE602C37D8A7CED20L, 0x26C04BF99C3061BEL, 0x1091C8BCA19CDF6BL, 0x997C4B1D90AECE6DL, 0xB729F1E04A40BDA0L,
            0x5E43FDCAC8B7EEB4L, 0xA623E6DEF2F8B8CCL, 0xDB20B454A8BC5D66L, 0x736CAEC82746C671L, 0x8BA881506179477EL,
            0xD34CF89FC8CC33F1L, 0x3D0618C80F3FED6EL, 0x0CEB56114D3E9D63L, 0x46D1B7336CBBF8C7L, 0x0A6E980F110FC7FBL,
            0xAA60B721C4953EA2L, 0xB4EA453F1EE8D539L, 0xD1D27213BEF7BB70L, 0x5FCE2A65B1202B70L, 0x4E0A6506EA9C131EL,
            0xBC52C1D2B4879964L, 0x18F437D65CA138B0L, 0xC56934213B017614L, 0x51CDDB915F0FA2BFL, 0x31FB566DA0719AEEL,
            0x0DE51B890B922E7CL, 0xBFD13C71ADC0E5F8L, 0x0B17DADA46831928L, 0xD7380BC98BC2C2B5L, 0xEC8E50D1FE145827L,
            0xB0912CF6A2F6DBD2L, 0x47936D9101F8A209L, 0xBB33D27B9D30DCDBL, 0x601289EFE18A3F4AL, 0x4A996ACBAB68E28DL,
            0x242B25A5291E479CL, 0xD58FA288FBF9317BL, 0x1674E14D7ABB58E7L, 0xBD3495E63CCB5621L, 0x20F41AFEC325A771L,
            0x40CC45CDA0F83E9EL, 0x79671F9F99BA92CAL, 0xAA034BC0F2A47DA6L, 0x6C7FE5499840416CL, 0x6CFA522FC7D6076EL,
            0x4ABFDF990F74B531L, 0x1281FA5B044CACA4L, 0xE91839CAD5B7E50DL, 0x2B3228A5F25CACAAL, 0xEB1960292ED7BCAEL,
            0xC193A083B2123FAEL, 0xD660064C5EA700F0L, 0x6A559E0A8FE6425BL, 0x5918C64E439B904AL, 0x4D9828768B7A0830L,
            0xC1DF121543585895L, 0xF596E2C33AF316C6L, 0xCFDB1F7608B037EBL, 0x978799CAD0A37B86L, 0xD8F3FDF2793A6463L,
            0x0D4B2E32DED8DEA2L, 0x730CA56F484376F8L, 0x0396EFAE50C6394FL, 0x3EAE6C4F8D7CDFE8L, 0x6A80C3017794FA8CL,
            0x5F27B4E9AF6D6F3BL, 0x9FE4F072C7D9BD01L, 0xF0128A616C4A4A63L, 0xB5E1912EFDBEC9B8L, 0x0C5A77877F793008L,
            0x45AE336C5D53CEBEL, 0xD942835CB6A25D85L, 0x925A4AF9709B3DEBL, 0x1A95B27EE6D1559EL, 0x5989F21CC60A0766L,
            0xF61176C080D2BE74L, 0x140BB192104BA4A6L, 0x9543BACAEB861CCBL, 0x472E71B12B387BEFL, 0xA07DFAAFF3926D12L,
            0xC402AEA17A2259A5L, 0xD525FFEB31798ED4L, 0x9D3D61CE989BE3F2L, 0x0794835829B9357EL, 0x1938FF9CF913D688L,
            0x1EDC6E36C62B2995L, 0x8598BDB093BB4F87L, 0xD139F86D449E27D8L, 0x775D87EBFC4853D1L, 0x8493B9BC3C1D27E5L,
            0x9EBE8C93DE464054L, 0x515E31B0D10CDA4AL, 0xDBE52EDCC5CE6F0FL, 0xA95B52B1FFE3CE3DL, 0xB2AE8E74C596B9E1L,
            0xD916438B36E2F945L, 0x89E2FE69036D0A5AL, 0x6CA4D478B0CC5F9AL, 0x9FD5521C01541D2FL, 0x981F74B4CD46EA09L,
            0xCD28A7CC2394D900L, 0x9C69702B27269EA0L, 0xD081C17C4335E389L, 0x534905EF8D860369L, 0xE52FA2E5D8734D7EL,
            0x047983C03231FF01L, 0x4561A15D39E28C9BL, 0x8A47A4CF3E8AA0CEL, 0x90488D721B225CB3L, 0xB9725EBAB7A36B1DL,
            0x1F85515AA8F653C2L, 0x5F6F129252F8937AL, 0xF794BF0BE0FDCA50L, 0x25DCC56BBED2C1ECL, 0x6E6C8930D82000A4L,
            0x3BD4F80BD3E5B60FL, 0x2446170355137294L, 0xB7F433C21183711AL, 0x0E9BA058FB67E701L, 0xF25B8F9BD234A650L,
            0x4EA7D90247B44537L, 0xB693F0AD3C4DCF72L, 0x1D375CF6168D69C9L, 0x0C23BE37F88F6928L, 0xBF6F1D81662765A5L,
            0xDBCF530B98AA9B7EL, 0x4D28D7143D8B956FL, 0xA0E8048577FEFCE9L, 0x83D32B0CEC7D246DL, 0x1BAEC92EEA9BC26DL,
            0xC24B8D31B43C257EL, 0x75BEC10169281DD7L, 0x8CEE1D5A637FC5FAL, 0x659703EA7BF6D335L, 0xDF20971F4F15896BL,
            0x34C4CC39DC2540E6L, 0xCAE52F2C9CC3CA81L, 0xB6D796353F4FC1FAL, 0xF98B942C1711BCABL, 0x682FA81770FC88C1L,
            0x6C59CC09FEDEAB3BL, 0x1CE0CA5AE4805FB0L, 0x031741A212AB8606L, 0x7B488B34B2BFB90CL, 0x52A15EBF53B3C0D5L,
            0x5DA33DBCA8D5A9FDL, 0x99423693F604722BL, 0xEBCE61498F416BEBL, 0x3345C1B82AE9C726L, 0xC494C4220CD85762L,
            0x3A5251F95C241D85L, 0xAE4089A265708DC4L, 0xC74EE620027AB221L, 0xFAE0E39AF9B5C39AL, 0xB332981C0B5CA14EL,
            0x4F916CA944556342L, 0x20D1F6DA8768480BL, 0x993D89EE404B2043L, 0x32D6EC5666C9B7E3L, 0x46C0918054A51D9CL,
            0xE74A6C46A089B4EEL, 0xE9EAAC9EBBCF8DBDL, 0xA7A8841D0EF56C58L, 0x20DD8CA8C702C115L, 0x833A95D3D5828B4EL,
            0xE9583477421E0051L, 0xE37B205FD397E94CL, 0xE9F290BD40D361C4L, 0xA9942E67C3D1E61BL, 0xABF4A5B02B9E9593L,
            0x0A888A33B87ABAFFL, 0x3D567A3AE1BBFA95L, 0x1F68809334041FE8L, 0x57A4259CDCD13E0AL, 0x99F5BFD1AF7B18A3L,
            0x9FE77F58DBBAE291L, 0x66616F95C107D35CL, 0xE75DEEEF9B775F0EL, 0xBA5F0EE209AB88F1L, 0xAEADFCF377DF245CL,
            0xCA814A34E39A98E6L, 0xD7739588995E50F3L, 0xAAED491C0194F5FDL, 0x8466498341A63BFDL, 0x91ABFC5F53E0B5B6L,
            0xB0FF8AD77EC8DD65L, 0xD971902FE098044BL, 0xC0746727B2F37EE3L, 0xA576C4A293142FE9L, 0x62FB23CC5E792214L,
            0xF409A6052174C123L, 0x11BCFDBE1AA9B225L, 0x27C1A2704F55FC04L, 0x5F7D7159DD5BFB92L, 0xA8CD9E4891E3FC23L,
            0x1FE8F60D57E9130AL, 0x3A974232B3A237A4L, 0x9BA1CC83F7D05C7AL, 0x6002DE47955F6014L, 0xF58F7EFC23E455CAL,
            0x0BD57C3195E0A575L, 0x48960702EE9334D3L, 0xD559A81DCB021EFFL, 0x75C8F5DBC45D5E93L, 0x1D1DCB481517DE61L,
            0xE4512173454A4DB4L, 0x3CB13E32B88A4581L, 0x3FA8BAC0E0BDB8D0L, 0x888E306919BD6C0BL, 0x587218175CAB3D29L,
            0x46E47C05BC7A095CL, 0xFA2049EB13D390A7L, 0x3AC187F3CA29C07DL, 0x45C56727D2495657L, 0xD31DF14B695CA74FL,
            0xEAC9A340742832C2L, 0x3297C5D9E529BF1EL, 0x72F4D7B4EFFBB9DCL, 0xF1351C5ACC242428L, 0xE21998D42CFC5651L,
            0xCF469D9354AFCAE7L, 0xDCDCF61794E9EA7AL, 0x119250EB3FB00518L, 0x9F7A2D80E1E0B54CL, 0xDD322AE3EAA60DD7L,
            0xEF0C22F2623489F5L, 0x671B881E0F6B5348L, 0xD7CDBC90F6F0B6FEL, 0x1A0D207059E26DA5L, 0xF2E8FFC21540A23AL,
            0xE7A886E08B10FEABL, 0xE0D8737877ACB0C0L, 0x70C211239D34E1B6L, 0x3C0087FF99A11EC2L, 0x0F7FF7948D8BF413L,
            0x9C14169CB6738103L, 0xF5A279631E9C9E4FL, 0x4FFD17CFFC9EDA36L, 0x745B040F98FBFA87L, 0xC3693A2E5E9D0892L,
            0x53609D139099490CL, 0x20C491454C65E455L, 0xCC730CE7C9D3ABD5L, 0x4252A812D332C617L, 0x214F7F6F4B9BAA92L,
            0xB73F21318CCD6414L, 0x4614EB10C3201C64L, 0x7DE79BDBD44B97DCL, 0x136B69AA21999181L, 0xB545D4854BC1BA05L,
            0xB43E58C795E4864DL, 0x364DEDD1450567D4L, 0xFCAA4566B9BEDAAEL, 0x4D381F41FF4FC6FBL, 0x1CC1AED185A08BAAL,
            0x5415560A0C1D45DBL, 0x64149FFB663ED290L, 0x15BBC5FA774DFAECL, 0x4C735307EBF0642FL, 0xDBF8E095692CB43AL,
            0xB5255B878646E3F8L, 0x8822AAE40CA49017L, 0xEDDD45351D4F89F8L, 0x2B8A9BB3B8802A6FL, 0x5BF2E2D86611C806L,
            0xEFF92F78183C1668L, 0xF6FC4741D0FBB9A3L, 0x2944F91EBF94122CL, 0x159F651DAF172B59L, 0xFA3CABA45B83B319L,
            0xDA842DB26DF3D99FL, 0xDA860B63FC2C429FL, 0x45916E6EDA5F7C86L, 0xDABA8B8BA49AB89AL, 0xA12C35737F1D1CC4L,
            0x29F2184C9010BDF2L, 0x17F40220F6F457CDL, 0x861614D8181E7AB4L, 0x77838BF6B083F424L, 0x90BD095783643513L,
            0xB1FFCBE9B674C408L, 0xF6F7449AAA8F02EAL, 0x84CE06A017BD2421L, 0x2D5E9340F7A215B5L, 0xB88B0CD6D1C5B4E5L,
            0x5CE186BD73600920L, 0x7768D683296990C1L, 0xCA2B5D9C0534A698L, 0x5D623910F7E30656L, 0x7B317803A39B5481L,
            0xDB35F56F9DD69540L, 0xBE57A37D1DB17606L, 0x8BE8AB71D8D46545L, 0xC6C3F39B8A2FE89BL, 0xD691F94EE6C0FAE4L,
            0x4BE2D6302CB29E9FL, 0x558123E97EBBD98DL, 0xD8C4FD3EAFD922CDL, 0x324FCACFB835E316L, 0xA4E89B0411522657L,
            0x163E15B1870B6527L, 0x752528E334AC2BE3L, 0xD93D8C650696B8AFL, 0xDADC6D232A407BBEL, 0xE259FA552DD36CA2L,
            0xFB38F0FCB93DE200L, 0x83B0AE923BB97C90L, 0x022B7C7A8E815580L, 0x64F84E827D375CD6L, 0x5EFF1C4D3D6F9EBDL,
            0xEB9A9E86C52B0176L, 0xCCC732B5ACC6782EL, 0x90AE0DB292FEC1DAL, 0xB18E8446FED87D91L, 0xDDA58C0DFD926B0EL,
            0x36187744EB66263CL, 0x9A51919D8E47C334L, 0x772E3CFBC0CE0672L, 0xB3D8B3C9532F8445L, 0x82D91B78C2F9BE4BL,
            0x3E93CA7E5757B951L, 0x6191CFA0481160BAL, 0x8E446ABFAD8240E2L, 0xCF56C7A9AD92CBA9L, 0x0AE03529538DD035L,
            0x3CC1C89AF415724DL, 0x5637B837F4077E57L, 0xBE9E126FE4988D17L, 0xCA05A3F0F776EB74L, 0x8528EA253FEB0EF9L,
            0x307B7AE8381E57D5L, 0x850BFAEF4741B5CCL, 0x7D26FF5988FCBF62L, 0x454B447E14CC9C1EL, 0xFB182671A40821A0L,
            0x50C8EF2E23ABECB8L, 0x9172F3A003B95387L, 0xE1A4A4A9B843CC8FL, 0xCB21762DB10D5FA3L, 0x7AABB77E7C984E0AL,
            0xBB25500E7168E256L, 0x812EFAC2FFF658B9L, 0x070B224B06BA4B44L, 0x9202EFF7C5C572F5L, 0x364F2D1F287C4A20L,
            0x791088DBD510D704L, 0x3205B43B45473C7AL, 0x0DC888FFB0E643B0L, 0x05E73E7502C98344L, 0x19F33B6FB14E1877L,
            0x54E2476E9D160A1DL, 0xE5BBB7E2854117BDL, 0x71A2659DFE604FA9L, 0x75823C629FA3ADA1L, 0xF8FFD361B556B57EL,
            0xADE3907D1BE4E86CL, 0xCB14EAA81A78176FL, 0x5A912193AA89F7B4L, 0xC1BF6BFA03C7F539L, 0x06F970F53A8599A0L,
            0x4A998F88E286A6E2L, 0x8E6A07FD41E6E9F4L, 0x9900553517997348L, 0x4E3C188226F71CD2L, 0x9C83634F396FC1B0L,
            0xF1C45C6702995F50L, 0xAB251721F96D525AL, 0xCF28F246ED43F254L, 0x0F158A2A56D53F5DL, 0x37E2E2A5699FA84FL,
            0xF71FAF30627C4E63L, 0xF19FED3A326A4CD8L, 0x79C41F3E488CA4F4L, 0xBE5AFC6B5CE5B52FL, 0x6F064BCE2CD50C74L,
            0x86ED4A200DB55B31L, 0x2E3C05492A307000L, 0xBC0220ABD3AC004AL, 0x2DAF6F527EC06DCEL, 0xE03BF892C2B67C5AL,
            0x8BB4AB1764CE86BCL, 0xD585648A88939CB9L, 0xCDD6A73C9341FA32L, 0x80F02C1AD5DEE1B5L, 0x950738C928C08187L,
            0x3E2786DC3F460D3CL, 0x874934BFA1B8B57DL, 0xD76AA259D5BB6396L, 0x320FCAE83396C19BL, 0xB3271F3807C1475AL,
            0xBE9A139FC6A67472L, 0xAEB2034152CE0C01L, 0x4CD5B04B54300900L, 0x384D6199893F86C6L, 0xBBDF3C60AF8A04D7L,
            0x7385D45E20059BB1L, 0x12FC2FCCBEE807BCL, 0xE42537903EC55503L, 0x74F52EBFEBE83CC4L, 0xBF59482F55DB8D5BL,
            0x8BFAAACD63EB124DL, 0x725880012F466949L, 0x8FCC4184256A4539L, 0xF3B54290320ADB31L, 0x3C9D618C99A77559L,
            0x5AB7F6784B7244A7L, 0x893CE499211FB3EFL, 0x08833B30CDEA8AAAL, 0xE84DCE4A8D5F1AA5L, 0xF3687308FB1FAE6AL,
            0x24E3D27D0BE24871L, 0x87BF772045694281L, 0xA8A33C3E0BDBF344L, 0x2CBA03BE8453F4BFL, 0x9286DDFD73D5E06CL,
            0xE913826408A66EFCL, 0x2BBB0F5A543D5B12L, 0x0D26B09ED5ED1595L, 0xCD815943B10C7744L, 0xC7D942A1722AB870L,
            0xD1D9E1E346EE6962L, 0xBBF86B3A1FEFB3C6L, 0xA2B8C3331F4644E9L, 0x26048BD71BC55003L, 0x4AD32CD222B662F4L,
            0x2117DACB836A7C77L, 0x21995814EAD54FEAL, 0x96765025CC02D6B2L, 0x7BBA800BA1EA412BL, 0xA882C5EB8405E0BEL,
            0xE4999295D29E86C8L, 0xA136F3A9B6486294L, 0xBD5B7F63A9BF027DL, 0x1FEA8ACF852AC783L, 0x15C85A13213BB48DL,
            0xFC189D61E78DE65EL, 0x6BFA69731DBC382CL, 0xECFB071BFCCF9BA9L, 0xEBE00B36BF3E649DL, 0x9A41CE2C19B8FF27L,
            0xD8DD5D3D494D8534L, 0xC2C84044A5DE5A6EL, 0xA463D7E5609009CDL, 0x4D2036CA87946C6EL, 0xD61B83A3F1740285L,
            0x84E5ED7D9C410610L, 0x4743AB7AEEF6FCB3L, 0x8942D5FFFB6C365AL, 0x9D36F1ABC099BC73L, 0x8EA4D43D6C8CA0B3L,
            0x38897057F3B4A53EL, 0x099C77B63246C642L, 0x28FC28939E823D6BL, 0xECFA784BC1489380L, 0x148C83BD624C6388L,
            0xF3AE5E380DBFF56EL, 0xD32B08B7A65D59E8L, 0xD18E7065B7DA2610L, 0x6B2F74FB865E8BE8L, 0x171AAE7B2E80D61DL,
            0x1E675C460CF9B1A7L, 0xCD72206B070DEA08L, 0x76A33CEDB6B30A4CL, 0x0B1EE877B15CBAC8L, 0x0CF0CEC6A9151A17L,
            0x89FE0A2241423F06L, 0x0234AAC70F5480C6L, 0x8476A491E907BFA6L, 0x8CA4366BEFCFE615L, 0xEE5935885C31D2BDL,
            0xFDA0B33054D47566L, 0xD625FF134E745A71L, 0x98C3A43B973EBED7L, 0x8826E1B1085C415DL, 0x41707EB502AE6348L,
            0xA7AB2AB341CAB468L, 0x9A06E002311B8226L, 0x75DE1F39C210BA36L, 0x50DE447F66C8C2EFL, 0xD31AF33096045296L,
            0x6573E516EF9A59D0L, 0x2946E548E618CC9EL, 0x5DC24E660C16DDD2L, 0x15A108F981235053L, 0xB27FA4F32656805EL,
            0xD0A1E21F7400C110L, 0x7B065349165B8135L, 0xA4EC3EE62B113009L, 0x68F624957969E704L, 0xDCF6583948032297L,
            0xF222C4BED10AE43AL, 0x83FF92FFF5148639L, 0x9F2B79B68C9AB0D7L, 0xA4084900B691DC6BL, 0xA8233D11534B5539L,
            0x69EE4B5B73ED02BEL, 0xF8F3BCD064B13743L, 0x6477FE0B537F8FDBL, 0xF6B26A8A3B18824EL, 0x24FCE001F68C1C52L,
            0x1FE3B4F0CCE60BBCL, 0xDA8751EF0ECC866BL, 0x55AFC510A1867131L, 0x2CACBAE8D371624FL, 0x9559D25F7276AAB5L,
            0xDC0929A0B10DE43FL, 0x69CAAB164A20FA4BL, 0x3D2D66FC96A138B8L, 0x76CE3D13085753CFL, 0x79F77F6561767EB8L,
            0x34A7D2D4AF6F5B07L, 0x5EB8D7380A420279L, 0x14EAEBF62502BB54L, 0x5E31D0543F857B5EL, 0xAB0D2CD86E963367L,
            0x63541ECE73D4FDECL, 0xF5ED49FBEC6F08E4L, 0xE3E3ED667A4C1AFEL, 0x5D9704E0341902D9L, 0xBD7B0363800E579DL,
            0x83CDBE05B81ED76EL, 0x811421192F59D515L, 0x58743E08EBBCF848L, 0x5A3242563752374FL, 0x6EB01A96CF51AA63L,
            0xEFDA4A9E7B45A76EL, 0xE6AA574A9589A977L, 0x31021216F4CDCB3FL, 0x141D0A5B61570C28L, 0x2DBD3F9CC5D7BE08L,
            0x4D62954601EB858BL, 0x44581893BA2F15A9L, 0xA381DE7BD402C9CAL, 0x3FBA7582F3D4D73BL, 0x6BBE7E6116F816E8L,
            0x04D2FFAE9A03008AL, 0x6078D3C2983A7FF6L, 0x117403650866081CL, 0x93B3863360CBE83EL, 0x71F3E0C852AB7BA6L,
            0xDB5A7390D6AA6D29L, 0x0E073D71E025C51EL, 0x8870F5448F0EA0E5L, 0x9AB9905853FA28CAL, 0x309505A36697BD24L,
            0xB90ABAF08FC652FBL, 0x96CAEA18A196AC66L, 0x78A2A296096EDA54L, 0x774E37A7E0D0C1A4L, 0xB63587D2D05E03D3L,
            0x342FC08C6628015BL, 0x97981232630A67F1L, 0x9FCA6FA200C14C50L, 0x862D52D6C351E493L, 0xF8A4DC8349595B7AL,
            0x153FC21FF6CD9DA6L, 0x1A1E2E20A5A19DF4L, 0xE6FD193637DD3E99L, 0xD049A4E3DC92FCEDL, 0x0A37036C74D2C913L,
            0xD5A6154125CB9EEEL, 0x3EB2E0E8FC3E1197L, 0x88E62BE55332CAE6L, 0x77B55829880528F4L, 0xA1C7B987062A54E6L,
            0x8EA7A275247DE9B5L, 0xB7FD91ABD8CDD971L, 0x0C15FC66DD7E42EAL, 0x7079B17F47CCC9C3L, 0xE5ECB35050DAB5FCL,
            0x5DEC1E35C292BA89L, 0xD8CB8E38AC7CE379L, 0x631489351D98D7DAL, 0xA16231D19DD302F0L, 0xA28ADF99BDCAA46FL,
            0x1C3A3DD33900CC52L, 0x31EB4E787C1C0F6AL, 0xBFF663B047CF3D7DL, 0xCFDC69913D7C4337L, 0xD9F9BEB2AB0554D4L,
            0x972B5AF1157EA946L, 0xB98BA8172C6AE215L, 0x9741A358092D49A5L, 0xD40022D4745900CEL, 0x3D8591057394BAD2L,
            0x3F06AE44735F3C17L, 0x65B580D86EC41538L, 0x4F34F8FF1F1AD187L, 0x1B1EB08E020F9F31L, 0x420591BA490D1974L,
            0xD3927427398AF985L, 0x45EA971D7ECFD501L, 0xB947B85C3AD1C9BDL, 0x3ABE0D0134A7168EL, 0x245E1451B05006C7L,
            0x32C169A59E21B77BL, 0xA17E398C865FF5B8L, 0x4A83E3F7F3FBE662L, 0xC31E267AFCAB5FB5L, 0x9672711323365B36L,
            0x403551AF4271E742L, 0xA177F6B4A6DE3AE7L, 0x1FB546483D5A7294L, 0xE301666F44A9BA7AL, 0x75E5B0BA40A6B18DL,
            0xD5DD9DF6743231B6L, 0x29C69A9D65C7A98EL, 0x4ED7AFEAC92917D9L, 0xA6E69FCF6F54B64DL, 0xD39A2225B294E8ECL,
            0x9DA2F3ABECAB6642L, 0x0A463E866BACC0B3L, 0x028D8DD17E7D5272L, 0x525B4DE53EA6A04DL, 0xFFBD7F4D2BCBDC9DL,
            0xE9F07DCB5E4FE5FBL, 0xD217F6C8F2DCEC1AL, 0x38E50D3388F60AABL, 0x2B2770B232E120EAL, 0x509ECE95C5CD4F3AL,
            0xE7DAAB19791ED5C2L, 0x7C08DA1C4588B387L, 0x7F95485DEF95FD25L, 0x8AF955EC2798EBD2L, 0x4F3ACB85EB2E3ABEL,
            0x9FC387F7C7069CF7L, 0xC36B5974ECA9E196L, 0xE7A998E9A4988685L, 0x05EE7F0659A808E9L, 0xF9044E3D6F8279C8L,
            0x065179584A34049BL, 0x5E658EB5BA7F9F36L, 0x5F04D76D0B6E0B9EL, 0xF69AC3E3C0E527E5L, 0x78D01693B10585C6L,
            0x1062818EA5C6AEF0L, 0xA836C9DA05582BE7L, 0x2FCE2C5276F74EF8L, 0x8574E419E3292829L, 0xA4AEE7E15E485A26L,
            0xE1FFD0024C0589F5L, 0x9F1AC6E2350AC750L, 0x8FFF55D26B87F7EFL, 0x7AF50E730878D53AL, 0x12FE1742F1D063D1L,
            0x379981EEF1452D03L, 0xD7143B758EA86F2CL, 0x5725BC99D540FF41L, 0x071AB286E2DE7D52L, 0xFB8DA277278A4356L,
            0xBCFB76BA7E946DF7L, 0xD08A6B862A797706L, 0x02FB13FC4153FD50L, 0xF29BE14EBE040C5AL, 0x23E399D2B3D719B6L,
            0x46C0799ACE022E4DL, 0xFC38839883A47418L, 0xD6286EDEE55038D8L, 0xC22F0B396DA277BAL, 0x371A92D7AD7EBF5AL,
            0x6EE1776E6706FF20L, 0x225D9E779E465470L, 0x1B481BCE3B0D570DL, 0x94EC5750BCAE08B3L, 0x30C102D22805BDFCL,
            0x425A6A2FEF63D1FEL, 0xD17D6C42CF79DD88L, 0xFF3BF8B844675324L, 0x6AF0C14E93310C92L, 0xF6091057B3D65C3EL,
            0x3D672ED94413CC2AL, 0xD65D37F89C310601L, 0xAA30326B5FF2368BL, 0x781D5B784E250EB1L, 0x3F52826F08754EA5L,
            0xBBF39BDAE87D2DB0L, 0x6E85AB3FE77B980AL, 0xC2BB35E5E87AFAC0L, 0xA73713DB2466EA3AL, 0xAFDD09C1D781D867L,
            0x3AA6D2D969DCDFA1L, 0xF94579E00C8F9D1FL, 0x97B2829B0CC1DFC8L, 0x3484D971F6B30D33L, 0x0BA8EE70F331E582L,
            0x35D3DF433D33A775L, 0x808E15CF6D739520L, 0xFD1CECEB5ADFE13BL, 0x4979F26E12F8CBF3L, 0x70D1D7C85B78423BL,
            0xB54A1E88EA9DD99DL, 0x8041A551B4E6EF44L, 0x48A01D3E77805D05L, 0x3144FAD8417AAAE3L, 0x5C3334663AD999F1L,
            0xF183BDE58D15B575L, 0x5DC330F89F7C5986L, 0x1C3BB1EA9CCD523BL, 0xCA7E897FDC99D742L, 0x0C5A860EFF1F9D5DL,
            0x3B7CD0D1F3B5AD35L, 0xD1E32677F2835F10L, 0xD9EE22A588AB7577L, 0x32FF2372B0B83233L, 0x3AF0B7647ADF3C36L,
            0xFEC6A27996D83917L, 0x1C7DB0EBE3D834CDL, 0x3BAE751F9CCE495EL, 0x67AD8AC1B9843DC6L, 0x8FB5847CC27B800AL,
            0xFA96D98811AAEAAFL, 0x4ED3A0C4ED652136L, 0xEF55235A701C5830L, 0xBED178414F7A9310L, 0x304DC8FE6A4DCDC5L,
            0x009AC2FB7E0EBA0AL, 0x5D8D4AB1093DF200L, 0xD84594EB87CB0C61L, 0xF625BE9DB58EE94BL, 0x186BAB9F41056D63L,
            0xC4B7C6E0E9EEEC78L, 0xFD2491C64F72D527L, 0x19DD8D4D6D008BA5L, 0x60CBBF39A0E60788L, 0x0BF357F0F6183B41L,
            0xC2EF7291D45435A7L, 0x53C3FEAAA73E4431L, 0xF228A677190AE743L, 0x32E41BFA7B158D63L, 0xD6439C664D9685A2L,
            0xCD1435742E4A445CL, 0xB30B44B39E8367E4L, 0xA3C3BF1DD26A7B78L, 0x5F31B42534B260F7L, 0xC3DADC48A31337F9L,
            0x40321E9193B11984L, 0x343A2C472E906F1EL, 0x9DBC17784217048BL, 0x90E1BDB2F01468CFL, 0x8712E9A360800B8CL,
            0x9D7E83C2E3ECB7ABL, 0xFCFD5165577AB76BL, 0x4C24B286AD18C173L, 0xB5464E2529402D76L, 0xAC3EECA3DFE08026L,
            0xA3769B6C61BF6430L, 0x244E238E761B8356L, 0xB759B3C43E1F89D3L, 0x70D105F75FFB1A73L, 0x4F060C3A5C7E46A4L,
            0x05BBAB87D74CC41FL, 0x4989E2797D475F8EL, 0xD02B2CCA5B4B53CDL, 0xD305C4EA8133D1A4L, 0x658A5671102F063BL,
            0x44E5B071818FDD71L, 0x4E247BFF6FD2467BL, 0x3711DDD5CC063146L, 0x9D2B0B254FDE80B3L, 0x0B582606D7E083E6L,
            0x617CDAF1C6165CBCL, 0x2CF703F520330D3CL, 0x4AFF9C4A2C6F6A3EL, 0x8D1B70C8D526F100L, 0x2A2E9FECBCD1F904L,
            0xDC4967D1B616EF79L, 0x947E4D8CB76FDB98L, 0x9A12CE9706F09ABBL, 0x1A85DB6DCEC8F76BL, 0xDA224F069CD6F313L,
            0x4E5F8A2DB18D9D13L, 0x298DC9C818A6BB81L, 0x8B81D13D44B9FC63L, 0x9B87A95179AD1F6AL, 0x175179E03F54736DL,
            0x8AF1EF64A76674EEL, 0xECFCF44FA56E44ABL, 0x68F9DA330ED11387L, 0xF9B4B0F4E1103FE2L, 0xD9CE386E5E7AECD5L,
            0xFA1D2A7CF5EE6A82L, 0x01AA58217401E5C7L, 0x30E0E8D7CFD10783L, 0xD7D46F3B16796884L, 0x228D2D04FBD1D41DL,
            0xA4DA52470AAF5BBAL, 0x16719DDDC18CB5C6L, 0xB73CA9DB90F82A45L, 0x80FC0AE413B33F5BL, 0x2FE15DD697C5DE47L,
            0x9419DF60765EAE5FL, 0xB80F4296CAEB9526L, 0x5F6641F88DC19EB8L, 0x775B5BE88D174E12L, 0xEE818F2BD0EC024FL,
            0x12D7A770FF9E5AFAL, 0x41A653F7E270BB80L, 0xF9FF78EF6C651C20L, 0xC5A99D3B5BE5DC3CL, 0xA33E69C5564A38A1L,
            0x56CC8C32B14DD146L, 0x439E96B64E0ACAB9L, 0xAF585CC6FEA8F801L, 0x8D0C06F014560486L, 0x99C05B2ADBEF9696L,
            0xEEC981F375463A8EL, 0xD80E5F9F0301B986L, 0x3E13D3054E2B1367L, 0x21A85CF7EF08E6E7L, 0x6BA04467FC24681DL,
            0xFF0254DC2E0EB6D3L, 0xD7857E9C70B33759L, 0x4A9AEF7C6B9A81D5L, 0x9A4754924108FD53L, 0x09A677D7CE40C960L,
            0x712840A65D6F5D0CL, 0x0716CD6A6246138DL, 0xCF8773EE1FD8DB71L, 0xC3342C7D807DFAB0L, 0x20FDBD59B3330B4CL,
            0x22C39318F2BEFA89L, 0xF212FCC5E0C58131L, 0xC4C115E5CE62601FL, 0x89CB1328FD7FC8CAL, 0x96F9C228E15C7E7FL,
            0x56F5309326B6F12AL, 0x0A5B0442E7A539F9L, 0xBB0D26CD247CAC1AL, 0x699408F9D4CBEC94L, 0x1BA8C7F00751FC72L,
            0xD1AD871ED897E9CCL, 0xE4D1D75E579219FDL, 0x868742EF6DE2CCD7L, 0x4455951956A71583L, 0x36AD00E7FFC89400L,
            0x29FAF37CCCA1F5E2L, 0x7CC2F6858B91A4EBL, 0x6CB819FC907A8F61L, 0x2ACC08CDA4C480A6L, 0x3368B8898DE3C8A8L,
            0xEED9E636ECF47C03L, 0x322EC2DCA92D6CFAL, 0xDB3817EDB1FB8F8FL, 0x4E8C74EFB05D21A6L, 0xFFF2F92F83849414L,
            0x8572267F7047A4CEL, 0xF29D2ED1B3BF539EL, 0x89E2967DACFD35EEL, 0x1D80F0D4E76C8C47L, 0xCA71DCF18EA4FCD1L,
            0xDAF3103A9E65A95FL, 0x29D59DCDF65481CFL, 0xCE4390183FF8E0AEL, 0x44DB6DD5CA3B628EL, 0xBBD1BE3FBD8DDCD9L,
            0xE8887FBF44F1709AL, 0x870FE99C9229FB39L, 0x27C9C7465985E38EL, 0x39CD56B98E7EB2A2L, 0x1B08EE0034574EA7L,
            0x2DE0D9AC8765C9E9L, 0xD71A7E46309029F9L, 0x335B5C0127AB6832L, 0xDE6A0FA46A9B8998L, 0x1BAF00FE1E4B8E44L,
            0x60EC89C191A0217BL, 0x6FBE86FB2F51FF7AL, 0xA74722D0A49E02DEL, 0x7592C54797A4DA0AL, 0x9DC7F91F8B7DA86AL,
            0x6C7BEF750341E9B5L, 0x162DD072E0E3787AL, 0xBDAAECA5D174ED26L, 0x3DEA97632F5F7126L, 0x0DD707D3D3BB657FL,
            0xAB702B0A830D4805L, 0x644E98D0623068E8L, 0x323FDBDAA872F7C2L, 0x7ED6390F13702425L, 0x8CE02182A9F78FF4L,
            0xCA04B71E66090C72L, 0x377EB9637F072FE2L, 0xD54F7BFEBEA90A3DL, 0x27F19F19D2717316L, 0xDAC56A5B50656E71L,
            0x81F00D38B1594EE5L, 0xF67CFCF79B851F77L, 0x52C4615C0093825FL, 0xC301E36DF36E680FL, 0x705E1E54ABF7D645L,
            0xF09926B9F55C81B3L, 0x8697DD2B89C190EAL, 0xF6F56DCA0FC3A526L, 0xA4A94E634BD4C23BL, 0x8603C1AC75436F54L,
            0x16243BD8F93BF63AL, 0x8CBCE4B89E4C8DB7L, 0x38888D4173E900A8L, 0xDE6DE46A59A83CD5L, 0x5A5E094DA95F82C1L,
            0x31B8D66AE62BFC9BL, 0x0CEE700E60839431L, 0x2A8EC2A02F1CC99BL, 0x481FFC438B7DAAA4L, 0x0BB429DF90CEF779L,
            0xFA989CCD422E87A9L, 0xFEE01738CC30C80BL, 0x693D918F3856AABEL, 0x3E566C98CE215BF8L, 0x32454B960A3D15B5L,
            0x21E276DA72786CDCL, 0x0B7E037743322BE3L, 0x955AFD20BADFB637L, 0x7312EE55B2F428ACL, 0x326A27B396ABD9B0L,
            0xBFFE7620299C2868L, 0xEC11F75D1B08347BL, 0x2585C01FED5396BEL, 0xE273AB9831ECD6DFL, 0x7D7BE20119BB97E1L,
            0xC2A8D7B69A6E6C28L, 0xC1B6ED0FFE81BE56L, 0xCAFFB96DDE233093L, 0xB006F571694F252AL, 0x69BAFA0C6568E3F3L,
            0x0F2A73B9B6D2E6C2L, 0x257812EA5F83CB1BL, 0xF89D363E774672AAL, 0x64A9E9794BA99757L, 0x14CE512A8C770911L,
            0xEF1C539F9D30427AL, 0xE72C5C5551F930D4L, 0x2B3DE5E93F2BE746L, 0x17A0987AC3C0653EL, 0xE2F5A6586AF9293FL,
            0x517C2E7D5C078AEFL, 0x6B0ED47DE1452C22L, 0xFE7DA6EDEF0F078CL, 0x3ED43DC626403A9AL, 0x1181BA1EC9CDAE18L,
            0xD133FFC36FDBDCEDL, 0x199775A3B05C2231L, 0x6FD2FD7D87FA93ADL, 0x8D994F1DF1816E86L, 0x1CBCDCB5C4B47FBDL,
            0x241399DA465FDF38L, 0x9AE45043ADD1C820L, 0x552958C207E9CF0EL, 0x62721996F8E65773L, 0xCE5174BD8F5F8EA1L,
            0x0DE6F8AABC6765FAL, 0x942C1CB043BCEEE7L, 0x125D6B909E6C82ACL, 0x975963C9CB96D4CBL, 0x1DC1D8FF5CB53CACL,
            0x082378F3C194A1B0L, 0xE79A602D21D9FFF9L, 0x73F2F2BAC93F3D15L, 0xAE091F8576917B6FL, 0x28F20A16628E35B0L,
            0x12EEE799C626CB4CL, 0xA9E3000F043D54C0L, 0x26AA74052A4D7AD1L, 0xA01F124A7F7FAC5EL, 0xD8AB7CBCCCA788B4L,
            0x5DD31516E3683219L, 0x242193A82B7BC58BL, 0xC0FF6AA2AAD4E923L, 0x3253C01A7B1CF04BL, 0xCA5EE2961D758BD5L,
            0x46B498263ECEB496L, 0x2C49975C5B069A5CL, 0xDC8FCA8911E3EF6DL, 0x3ECB62F56F82C4BDL, 0xBD38B742BD1C327EL,
            0x718F083837B860A3L, 0xB1E34CB8244AB32CL, 0xBBE5B3036F3D8F8CL, 0x5FDED798DD7F79F7L, 0x791F1DE2636E784FL,
            0xDAAF0082A5021001L, 0xDD88224462B00F16L, 0xF787A7B9E89A63AFL, 0x68D1DD6BFBEAE93AL, 0x22F8E11618AE7AC4L,
            0x774AABD4A7AB16ABL, 0x8620949856F81764L, 0xFE3A0AD4EB2580C4L, 0xFE7CEEE6809A06DFL, 0x72D7B8D954CD6EBBL,
            0x8C87EC473C8FB438L, 0x00BFD3A342E89A16L, 0x4B8514746F881DBFL, 0x566BDD811E2FC1BCL, 0x12798A048363C441L,
            0x4623228E3D0778A8L, 0xBD0A10DF9AA4E38DL, 0x51FB319467AE954AL, 0x5D03789917478F65L, 0x0BE6E534DA38B907L,
            0x1C9C1D4F5899FD1CL, 0xC98155980ED5738DL, 0xA8020802C4BEA165L, 0x20223CE979951BD1L, 0xAC931224E0BD2B22L,
            0x2AF6457D566528E1L, 0xBF24C373AD001738L, 0x5C3BE38862AB2F02L, 0x0B0741017C676EACL, 0x966E29E2BD81B9B1L,
            0x1AFAA49D1117879CL, 0xAC0CFD625C3D1974L, 0xBE11889AFC60AACDL, 0xD6DEE8E56C7A74A5L, 0x1E86F14F16289AE8L,
            0x33EA2135C9998CA1L, 0x79D4576124777797L, 0xC20F8782413344FEL, 0x79DCE062C4CF2625L, 0x1017CF366896A0ADL,
            0x28CB41F2DF2E1A4DL, 0x8E2DDC872531293EL, 0x3E4572F9A5A2DD5DL, 0x102340272A291EA1L, 0x46E52262AB9156D7L,
            0x938D46127742720DL, 0x286A7F083CD7F133L, 0x28A5E5833FA2FCFAL, 0x47E2C54B97260E77L, 0x790DE2A5B2C82D59L,
            0x0D0C58354701ABB6L, 0x9DEF63B696881263L, 0x8980B9B6F5FF5FBBL, 0x81A9FEC61EA2E1BDL, 0xCCBD9405F8F5E070L,
            0x82189F67DD0D42C0L, 0xC9E6C8D02AECBBB4L, 0x79ACD82D6DB7FE25L, 0xDB28165A24CB43C3L, 0xC8FD46D0092E2A6CL,
            0x62E1CA6BB1CDA466L, 0x6A12078A5B2021B0L, 0x3E58E33A85FFFD76L, 0x5C9FD024BC6A8BC4L, 0x9262DB593E058880L,
            0x408AD1D36BF09FD6L, 0xF295A2F4D6B68A8BL, 0xB472360FFE1E02E5L, 0x90C86A8B9F0AF04DL, 0x22AD122520A264CCL,
            0x7737F589301E4255L, 0xEA09EB3A667B43B3L, 0xED6EA20BFD196FECL, 0x2ACA3D35C01F1E25L, 0x5112A266D7EE12C7L,
            0xEDB9ADE3B424661CL, 0xB20860BF200612BDL, 0x04ECCF550669CBBBL, 0xF6DE4179FD0CC810L, 0xC594148B2667049BL,
            0x053EC9FAD230341CL, 0x5A8005FCA0E89CCEL, 0xC42D2A86C54D7365L, 0x19561CA99616B100L, 0xED1A9FEAD1927952L,
            0x931DB5F1C2513D6BL, 0x476847D9AE56451FL, 0xD5B9B479E7028370L, 0xC9B40DC560F560CAL, 0x99043EF7782DF811L,
            0x87539940A3A0EE07L, 0x19B008D18C15C7A9L, 0x78AC16D0AB429A81L, 0x97B64E0C8C0D4F8FL, 0x449AA45B0B9ADBEEL,
            0x1804900AF80B0C88L, 0xE9EBCF37CAF59DC1L, 0xA3408F3FDA487531L, 0x13E4FF34EDE96581L, 0x4FE6DAFC34CB99CEL,
            0xE62E53AFA7ADB00FL, 0xFEA8400EA86D3F1DL, 0x04F2B234F4CA395CL, 0xD6DD2502FB67101FL, 0xBFD004EBBBE05163L,
            0xD001C357E54A82F8L, 0x4340DE592B97245EL, 0xF69FEC1A86AD374DL, 0x0E67BBE374ABC197L, 0x18AF27DB1C9978CEL,
            0xE4B604C3BC66833EL, 0xB95AAA083A68BED4L, 0x8DA71BE77DC69323L, 0x6046C24B08440A31L, 0xE2D71C97CECEF35CL,
            0xD6D7D78FD93874A6L, 0xD002D7852B967F09L, 0x68A18BED8954B1A1L, 0x8303342809C596DAL, 0x8D1272C1630A362AL,
            0x0DA3AD3E155BEE0CL, 0xF99166CDB27C4E2DL, 0x5A386A711AA57FEBL, 0xF6B1114F16351F80L, 0xB01EB10A91896B25L,
            0xAAC0187B2E3C8F58L, 0xB0E0BDE8834D176CL, 0x59E857F6ED323D08L, 0x337587B0A633F338L, 0x8A357C5CEAB45D3FL,
            0xF325BD99116292B2L, 0x6244FFFCD2F64323L, 0x0CDF08E6DFA3D604L, 0xD6063E91150760F9L, 0x924DF99040B5CCA4L,
            0x7FDEC3B1E7EE9039L, 0x1FD84D4BDF069C5AL, 0x17A9A05ECE68913FL, 0x93A09F9A2AC0960AL, 0xBE731B0E91987CFCL,
            0xC1FC1D299344A78FL, 0x47799736A4C5674EL, 0x8152A14F454A5125L, 0x7EE6C15BEEBA3EECL, 0x3624650AEDEDFE35L,
            0x16D72743790EA00AL, 0x19FB10721229EC81L, 0x85B1ACEB6A41611DL, 0xDF524520064EFA06L, 0x677AAA8B5D222D66L,
            0x130F0E9AC2271108L, 0x28AFF1E046B71735L, 0x33DEC074BCA34B22L, 0x3E6945A213563C01L, 0xCAE77D352CFC9758L,
            0xCEDD790A1C60EEBAL, 0x817300F38F66047BL, 0x19143AE839A27111L, 0x2ECC0ACD207A9858L, 0xAC7803CB23F3A28BL,
            0xEA48F53D74C4A58EL, 0x431E7D5C8A69C486L, 0x11890AABE8C8AD06L, 0xAE09A61387F214ACL, 0x7C33BD4BAA305554L,
            0x334BB3FEBCE49B68L, 0xC70AD3C513C63193L, 0x3CDB8F6956A63248L, 0x99F06AE70C10C279L, 0x6E16EEBD2F2C0682L,
            0xC18333F3D18E9FB3L, 0xBF4FEC014EB9C5F2L, 0x573E8AEBE795DCCDL, 0x1470DDF9A3E1C943L, 0x54953487341B542FL,
            0x7FA576E8E070FC2CL, 0x90401C5F98A95BF9L, 0x0D25ED973D7B8CE2L, 0xCB09FD1FB002D3BDL, 0x7BA0863E1D849E2BL,
            0x4CA22A556600C773L, 0x3F6DF49CC12CE3C1L, 0x738D31DC605EE312L, 0x379F2A78F19E46DAL, 0xA70E4DA2AD50F3B5L,
            0xCD211A668B700115L, 0x50F1D9D72FCA8637L, 0x079229C4DD6C961EL, 0x8961CB65919CA8AAL, 0x6317C2654032C8C4L,
            0xF27DEAF2E887BB19L, 0x8860B0694E63A65AL, 0x962EF558BDABE56AL, 0x7E307F71209B9B8FL, 0xE0BFC7F6CDBD8364L,
            0x8C321F42CD134833L, 0xA00500F82C987528L, 0x8B7DDFA8D0798372L, 0xF36A6DFDBFDE1193L, 0xA420914B5C214895L,
            0xA701BA76CA82C969L, 0x521E71E4B549A449L, 0x4CB97E308E25AD40L, 0x69D3C134C1E4C4F7L, 0x5D2808841F634D77L,
            0x0D39F5B5F8E294B5L, 0xDEDE80D5373D22C3L, 0x43838810D69FD1DCL, 0x3A02C5DF95FD2717L, 0xA4A856F899BF833FL,
            0x67F4CEAABAFDD1F8L, 0x54E1BE0A1158779BL, 0xCE0B65BF10EF9877L, 0x4AC045F452E94BBCL, 0x18FE7D967F50B061L,
            0x276D362D2D52C961L, 0xFE5B48029FE7776BL, 0x2DCD8D0D457E60F1L, 0x74687DA12A33D26EL, 0x4CAC5E41A22C9A75L,
            0x2924523A86F1EDDAL, 0x13AFD5052DE12E78L, 0xB8970343B2D85018L, 0x64CF7BB3889695BCL, 0xCB70B27C29EDF774L,
            0xAE2078CC0E7ED6E3L, 0x02FB0C044BE718B6L, 0x7C3B0E8C25AD3B7DL, 0x18AC41058E1F50A7L, 0x6E21B9E1DA39F220L,
            0xB02D9A63E8E30A0AL, 0x4A7AB37A36F40967L, 0xDC74A5B543DFCAD1L, 0x451536470875301DL, 0xB594961A00A95E9BL,
            0x551B6DEB38EED0D2L, 0x4731B64C6A70B9B7L, 0x99F9F0FD9CBC03ADL, 0x790FCDA30F14C748L, 0x50EE1335C25BFF43L,
            0x8DF5D284DFEDEE37L, 0x71532E198C0EB9ABL, 0x832CC61CF7BE441AL, 0x8431DFD16E0E5D33L, 0xCE26F2F74F5FF23BL,
            0x1E36D36389CAA05EL, 0x9063D6730BE1105BL, 0x8426CF9EAD688711L, 0x9D6ECFCE2EEBF9EFL, 0xDB03EE882634231DL,
            0xCDDC3ADC955B35E5L, 0x0088C2423D74A486L, 0xF673544C6028BE34L, 0xA04131D948A27E35L, 0xE638BDA968CF9BBEL,
            0xC771048BD8A021FAL, 0xDAD72421848E3455L, 0x3823689FAF46EF08L, 0xDAEBE25DE0E823E2L, 0x042187F1DF14F055L,
            0x4B02678EF80956F9L, 0x453C53FBFE998478L, 0x8E95702144B82C60L, 0x833721170FB20F07L, 0x8C32A35C83AC7459L,
            0xCAD051568A627384L, 0x7CE5687A7B3E07AAL, 0xFEC3F6664BAA644BL, 0x9D54519E7A81B5B5L, 0x4D55FB62A2619431L,
            0xC489E75B4E054027L, 0x3CD217B9FEB7A7A9L, 0x0321E049527F5402L, 0xF99BA6AC4C9CEAACL, 0xAFA2B9809CE8BB0BL,
            0x82CE0815E5FBE2BCL, 0xDC0DCA97EB94ADE6L, 0x29168ABCF745E0AFL, 0x5F3E461C04F38E68L, 0xC859526F8F744C33L,
            0x0471B23F96E1B2E6L, 0x51D918C90C459322L, 0xA65E58D41C659E86L, 0xBC0492880C19011AL, 0x6B87CD75500557DFL,
            0x98B0F0F3F069D803L, 0x0903890E45D25671L, 0x4472AAD46E94E05BL, 0x61AB4EC37A9108B4L, 0xC3EE971E1827E088L,
            0xEBC32B8DFC648FD1L, 0xA062D075D09D0C81L, 0xC0603BAD959A4B46L, 0xA5527848FC0C9B83L, 0xE862CB609B417DFFL,
            0xE022C644B8F057BDL, 0x54A4B726776C07AAL, 0x69A4A18596C5BC07L, 0x13FD171B42073056L, 0xDAEA4FE81BEC1E2CL,
            0xCC0914D4435B2997L, 0x9472D97736C7884BL, 0x5B2DFF6798737FC8L, 0x6A9C95FF10C8D257L, 0x4D105A26EBB48F1FL,
            0xA676BD62CD9DD4CCL, 0x40C7B3DF5320FBB2L, 0xF0736459B5743FFDL, 0x6B58E23B31D2F8A0L, 0xF52472D206CDCFB7L,
            0xE38F1B3C3B6CA9F2L, 0x7D117B425B09C90EL, 0xD00D0990764D6DFAL, 0x21E1EEC210678086L, 0xA77FB3D15C772E37L,
            0xEE7CBCD634EDA0F9L, 0xF71B168F0B4C4D03L, 0x676423669F2B1FEAL, 0x8718F95C5744AC99L, 0x3E814F6EA487CA28L,
            0xF9B623DB5AFAF539L, 0xBBB6B57918552BEAL, 0xA9321D1E40017B6BL, 0xE3FB9E19DB9AD9C9L, 0x069EE17B941644B7L,
            0x0D694A1AAB075C4AL, 0x4FD6ED4B4662F84EL, 0x018AB024EF4245D0L, 0xC0B3B1CD2EA45A6BL, 0x9A674E454352DB2FL,
            0x1CAC78C74B291487L, 0x742B80B29588413AL, 0x5448D7487AC0D187L, 0x16F5A8CCE0E2E601L, 0x8F5CCC31E4C2EC92L,
            0x5C3A8F6727A2EA95L, 0xBBC9F817CB92EA36L, 0x035937EEFB453A92L, 0xEA8C9543B50AFEF8L, 0x235ED31EE2CBD0BEL,
            0xF4216C7AB05DD391L, 0x06A58B753DD7F47EL, 0xC3D6C97C5230565FL, 0x19DC47B841BC91EBL, 0x7969DCFB0DB20AD2L,
            0xCD339C65454D3ED2L, 0x4B515D1EA4B33AE1L, 0x0DCE3FEDE8C618EAL, 0x2C65A573C8C103C9L, 0x913FD343E8DBFDF2L,
            0x0F19A77D7C89BEA0L, 0x46C9F43CFE8D3CA8L, 0xE940A1E396CE0E8CL, 0xAC30DDE2B90455B5L, 0xB7696198FF61B997L,
            0x4868F7E06B61C5F6L, 0x80177A1322C12E73L, 0xE705C5C37DFD2FD3L, 0x3FB2BC0BF20088B4L, 0x363BCCD9593B1F88L,
            0x37C8910A5AD75645L, 0xC86D48089FBDA682L, 0xF94479483EC82424L, 0x4BA48007EE523440L, 0xDB8CAD5458763DACL,
            0x27035FF601A5775DL, 0xDBF789243B5760EFL, 0x921906541C593FAAL, 0xDBD7BF15F41DC3F0L, 0x9E382502BBC86285L,
            0xF16292B70F4AF1C5L, 0xB84D63E73E5694C9L, 0x030038F0B77993E2L, 0xDC5ECD77FBD69A0CL, 0x7F16A9877E217B18L,
            0x14C6F6741F211F11L, 0x6630E0B9BF94FD17L, 0xB86316A4F7AAA58FL, 0xFC643B05B63DCE6CL, 0xA6560B91627721B5L,
            0x8320ECFD81283657L, 0xB5A8C39DBB6E5E23L, 0xE826B15B6706A0ECL, 0xDCF97C212AB97924L, 0xD313F455C110FD56L,
            0xF492138CFD67E673L, 0x7B1A3887C029D13FL, 0x3DA7F5CB3545E2CFL, 0xD3A2C38E32DF47A3L, 0xC62D0094C162C328L,
            0x3B3702CBDBFE909AL, 0x2B832B8487700F2FL, 0x4DCC5F984F8A78DEL, 0x918B8840F5BAF78AL, 0x2C965967F7078317L,
            0xC8F2762A261E8204L, 0xBBCDA852563FD22FL, 0x5140EE849404CA65L, 0xE45F36A8B694AB45L, 0x9B24FE28320004DFL,
            0x3642811B09588EF4L, 0xD788DC4FEF59972FL, 0x0A3A96442083B501L, 0x227C1734A268AFE3L, 0x290E5437196AE2BAL,
            0xEF952AACBA3F4F69L, 0x6CCFB906C6257385L, 0xF25E271738CBCCC9L, 0x388BB6059078CC70L, 0x7A855B726E341043L,
            0x55C948D0443B26C0L, 0x4AF14082A6D39824L, 0x8785DD062F4572D8L, 0x2E8450859ED77085L, 0xB1E139E09A1E5BE6L,
            0x6F3D0AFD812024E4L, 0x3678D3AC8EC5FE3EL, 0x468F22A9A2B46AABL, 0x7975967539FDFD49L, 0x3A3560DC389AE61EL,
            0x6C99F906B7B4A36EL, 0x2963C8E15BAB0750L, 0xCE24F1B554416568L, 0x2D2DBC483475230AL, 0x73281531024053E0L,
            0x7617116008FDABCDL, 0x49F30EF0400C0946L, 0x9A323C5AC6C1594EL, 0x7384B69C2FE14737L, 0x3CD39D0AACF4B123L,
            0x1474DA2902DF8DFDL, 0xD4CB5B4555ABD17CL, 0x4093DD219148D1EAL, 0x523FFE88F02E2717L, 0x9A859EF4595B5D94L,
            0xFBA7DE89B355E9D7L, 0xCBE4A7E7EA74BD42L, 0xB40DADE54C85679DL, 0x3D02FAA4C31F0F0EL, 0x45AF5A43FE4FDB5BL,
            0x5F22CB1966E21485L, 0x8D2F71C0299D5E78L, 0xC311B6C8F3CFB5C5L, 0x54FCF08384B17CFCL, 0xBA4D4267CFDC1B71L,
            0x80372F0E350AA920L, 0xE46A08F72B35EBF6L, 0x8A4185B3C3D5C92FL, 0x9F38656156F1E1EDL, 0x065D806B601DF2E5L,
            0x382C64EAD6812C9EL, 0xDB0EB3157EB4A9A8L, 0xBAD5F2966684A8FCL, 0x99AF45FACD4BB152L, 0x6CBD9DF2BCABD086L,
            0xE588904644DD4D64L, 0x24C4D68E4A7E0CF3L, 0xD8E4EED8973A24D5L, 0xB52B64AB97F9C29AL, 0x0400DCDCA40D8CE7L,
            0x95AAA38C231EA8ECL, 0x2B5FED1A3B68C19EL, 0xF0993E0F9E9C3F7FL, 0xFAF9230D5E7020C7L, 0x8CD41F2333F1277BL,
            0x73D2955F527964C5L, 0x283480D1DC743465L, 0x940DBC679F722E6BL, 0x759C7A9D40DC74A0L, 0xC80D7AF3E01CF9B0L,
            0x4831360B9FF3911BL, 0x8047119C09416F0EL, 0x451F5B2ECB5504FEL, 0x7C76297FE49AF3B5L, 0xD04E4A395C1EA162L,
            0x5455DE5654E27508L, 0x80B026FC61B1664CL, 0x39A66D48F9FCBFFCL, 0x10624B8841B04184L, 0xB93412265EEDD34EL,
            0x659BDBEE52978D0AL, 0xBAB1CB0366D793A9L, 0x3D6FC272F1588226L, 0x93B07778DAE82B37L, 0x52AFA557F6939375L,
            0x7A94983330B73A38L, 0x93C1C1AD49228F5BL, 0xCD6099A1073D6482L, 0xFC0B756AA1C7DDBDL, 0x5F4A151C1824C829L,
            0x02909A63AEF3EEFBL, 0xC17B52F0DBD89397L, 0xA9B8F77BEFBC5776L, 0xC90B5944C85555DDL, 0x05AD91C65A2DEA33L,
            0x581B9BE28D61520BL, 0x798CA01A3B55BE4EL, 0xC435D385A46FA6C1L, 0x39B884E6FE73365EL, 0x826A84511F118D67L,
            0x94CE8FF134E42DFEL, 0xA4594EAA7C79E0ABL, 0x2F5BB7E4D9863113L, 0x22328FC1DD34102AL, 0x922A4E802855E184L,
            0xA6EEDBA3D3DFB782L, 0x0A103D6B864CC380L, 0xDF591DBCFA3BC90EL, 0x7467D19DE5885D90L, 0xD437324803A0B122L,
            0xAEEAF37ED6F1C0F8L, 0x65C19736A87C9488L, 0x2E6BD6CD9CBC783DL, 0xDCC129A42217657FL, 0xFFF0A2971827D4C9L,
            0xEE17CA08AA888C93L, 0xAD004364A1267202L, 0x5A1858DC3A625F09L, 0xC872BC0FBF8A5350L, 0x4C02CB7A7428A2AFL,
            0x6EE5107F63A013E8L, 0x611B619D3D71FF50L, 0xA6F364E2A71E0250L, 0x343EAADA15F58825L, 0x2BA817C5977D86FEL,
            0x7C7AB51D36AE0BEAL, 0xC912A9B717F8AC80L, 0x751F6D26CD92A88EL, 0xA1C66600137B590BL, 0xDDDE94ADAE44C793L,
            0x3602893CC5FB9465L, 0x53FBBAC7F4883A94L, 0xDC93E87D60D1E284L, 0xBC365EDA830FBB94L, 0x5C0331DABEBA9A60L,
            0xB9FED85727BD2AF9L, 0xBA6CBA470A6781BEL, 0xBDAE4A1DE6209566L, 0xCD685FA9ED7D2A07L, 0x52E3B379219165D6L,
            0x03ACE6265E255F65L, 0xD3CE5E1DC1EBBC98L, 0x31A4F7C4765F42B9L, 0x1816FCC720964226L, 0x5AF18278F263302EL,
            0xE8408C7FB70F04EFL, 0xE6E00DE18A92AF6EL, 0x5AC1D7C694EA9384L, 0x5720BBD6E17F27CAL, 0xC0BFDA4838C0A0CDL,
            0x8891314377C5C1CEL, 0xF73C59F42E342631L, 0xDFBA9386CD8C911BL, 0x88AE1ACCF2D3B7D4L, 0x37A50DF2549E2483L,
            0xD467C1DA0438A95AL, 0x7BF166C31E273FABL, 0xD6D2CD348367C5CCL, 0xB8A9DF4BCC6118D0L, 0xE971BF3BF4194B99L,
            0x8D0A43CF4A654E5BL, 0x0DC1DD89322CA5C3L, 0xC48380DEABB23363L, 0x8C7DD54DAC2A0DBAL, 0x8485A1DC20E7DF58L,
            0x9D699A56EF536D74L, 0x4028FA9730766C68L, 0xA4B8CFFD806F8FC0L, 0x2E8FA0BDA00FD155L, 0x04497FE00411FCEBL,
            0xB7E7D53DBED496DFL, 0x4252B54D01B6DC29L, 0xC138A56F904C9DF4L, 0xA6D0C9DBFED0E668L, 0x22B15442FD5B1331L,
            0x66E16BB9B14E756FL, 0x88F5F86AB2915586L, 0x6B650CC7C4F41281L, 0x99EEE1DCBA3DD0FFL, 0x60AB7EB50B6129D1L,
            0xB2E9FAC8B4E3EBF5L, 0x219007C91446448CL, 0x5A5E6A72DBB9743BL, 0x5359FA3041F37150L, 0xED75173B3F10CAFFL,
            0x32D7101DDE00633CL, 0x1A76945CFD96317AL, 0x3093C632E27659FDL, 0x3F8DC3CEC97D5DA6L, 0x53B8E71D8575298BL,
            0x4AD3D0EEFDCAB589L, 0x2AFF9B8400084673L, 0xAF617981D01788E4L, 0xF354BBCA2C5BA3D9L, 0x4D2C93D55A3A2C3FL,
            0x862E1A64DC4B02A0L, 0x48BCB6A7536B45A4L, 0xA037E8F116B81D54L, 0x864DCDC4219BBA94L, 0x8DED7C57E8E072CAL,
            0x6BBBF11E39D0CFEFL, 0x30D570DC9066E198L, 0x379F777159777FF0L, 0x3782E9FB1B80E0CFL, 0x2443ED5402C19F64L,
            0xE623C7945E447698L, 0x04B129E49B4AF2C6L, 0xB74DCDEFEEB92BACL, 0x22C21F1C5E491CECL, 0xD6E38CAE64FA32BDL,
            0x814E5111CACC2C62L, 0x8D518DD58941DD42L, 0x66B50953DA96C9ACL, 0x1A0DC5B10F67D34EL, 0xBC9B35C7E74977FFL,
            0xD328E25125F9EA56L, 0x037D6155F9B04B3BL, 0x0EEB5A021EAAF710L, 0xE5B8ABEC5A2BB91EL, 0xDDDFB7263681A0D7L,
            0xDFF62B4261429115L, 0x7951E16A2DCB212FL, 0x1E718209C4997D14L, 0xAE35CC615A738865L, 0x7954D41176968751L,
            0x108C0622D305A85EL, 0x486E9F2BAE384BE3L, 0xE1C9618F653F390FL, 0x89D21E79189F0A90L, 0x87666B7B28B2B63AL,
            0xA172AC0B970F0C4BL, 0xDFA9E4078CA26C5DL, 0x0B9AA7A20A2F9136L, 0xBBE75A0527D33AF5L, 0xDB20748F0E880F21L,
            0x92D1A944B9C2CC8FL, 0xA887D8AD7E48BDDEL, 0x052C22591E39F932L, 0x42C55E93519195E1L, 0x8D092E4C56EA4625L,
            0xCF1ECA0858904F08L, 0xBDF11765EA550E2BL, 0x35AF430B91E2E880L, 0x34B1652A53DEDFA0L, 0xDD5AED9253DD2016L,
            0x023E515186981A1BL, 0x2688866C6859CE84L, 0x07F609787ADBDB88L, 0xC9BCC491A0EF2F77L, 0x5EBFF9EB8E86ECD8L,
            0x003CBD6A94817F57L, 0x27E864F6502F28AFL, 0xEB23B677EF3CDE22L, 0xB842F3ABC75E5AC0L, 0x8AE45B06CB315DD9L,
            0xE6019D35966FE4B6L, 0x77ED4D7871E65C47L, 0xD9DCFC45565E9DD8L, 0x3F3A94EB36501335L, 0x168CF34F315A74CEL,
            0xCCDEADEB12C8F742L, 0x903A3BC72EB6E730L, 0x0D18DB17A7B55CF7L, 0x027B0EAF0149F8C1L, 0x7454ED83E5AFBCD2L,
            0xF093C14BE10B848AL, 0x117B8FE0612BA25CL, 0xFB1BBBEBF1511C32L, 0xDE3D3F558DA62788L, 0x81CEFE3C56A63E3CL,
            0x808EDD39739424E9L, 0x6A4098B0D1F68A21L, 0xC15559A8A6694883L, 0x8642811FE238D154L, 0x2042B4535724E040L,
            0x0147D5B5BA8D06B3L, 0x9634AA9E63FAA25BL, 0x6CA680FD704C29FBL, 0x17E7B48ABECE6D30L, 0x518E67C80B2DF330L,
            0x849C20A7FA51A95BL, 0xB6A9BA4C0148C21CL, 0xF15346A188BC7C0DL, 0xB0CAF0E54952C04EL, 0xC38F5BC97F2E1CF5L,
            0x9BB0CE74F7214846L, 0x100CE94FCDF6BA3FL, 0x83CFDA62B11092AFL, 0x24B3ECB0580A2E70L, 0xD63C66E3609A72D0L,
            0xBB019C1DF325B71EL, 0xA235892634F09DA6L, 0x8B7BB697A62B28E4L, 0x72780CA6CC37A33DL, 0x3D4105927C719BFEL,
            0x9D6DE4EFC66AF83FL, 0x4893B8FD02D58E69L, 0x9C7035A28CC43DDFL, 0x7A4201AF8686CB87L, 0xDDBE1BB320FF707FL,
            0x2A1D3626FD9D5E8CL, 0xE471184FF97CD9C0L, 0x2A2ED5C026B5BC48L, 0xCFA0D9FF71F120E9L, 0xC92E7B76EED97A04L,
            0xD80D270E93D92CBEL, 0xCAB996739436A28CL, 0x7411C178D6A0CC42L, 0x051B2091D03357A3L, 0xD64B4405DCF7D7F6L,
            0x18F95D4C5C8B3D6DL, 0x5E3F16624B834396L, 0xF5046252ED5BFE90L, 0xAD7DCE9584A4F865L, 0x50CDDA5B84FFDB27L,
            0xF1246D3505C0DA7CL, 0x1031EE90DEDC79B4L, 0x99409B577C081FCAL, 0x664C7F4F1B4D68B0L, 0xD78D714AD16A2D97L,
            0x15B1E5B3A106B873L, 0x8F1F77AF15EC99CFL, 0x25B4B0CE175CA086L, 0x09002D966E563F5FL, 0x53C20718B90A909DL,
            0x906509ECBEAA2168L, 0xAE6C7B25D0282CC9L, 0x260F906C0599AF1FL, 0xE77FAD487A24D5A5L, 0x0F914EFB75B0EA7DL,
            0x7584B746E5BBD08BL, 0xAE95D35C31A18E3FL, 0x1560AEFB1CF2B912L, 0xAFF7A6A5D2B223C5L, 0xB4461D12225A6C64L,
            0x3C572019F2EE97C4L, 0x42F349EDBAE36833L, 0x0E05CF63C06AD4F3L, 0xAF450FF674BC724AL, 0xF48C5B768B6D4E16L,
            0xC2678C86DFCA1B17L, 0xC6B1C2BD370E3D15L, 0xAA7E82DB85741CA1L, 0x8AD4EF691A70C302L, 0x685EA34C839108BDL,
            0xBC91533A604E9539L, 0x96FD0062496FFC8FL, 0x7811BD27B34C8E00L, 0x5C849F285E09F489L, 0x31173CE56F085B52L,
            0xEE83D46E93993392L, 0x8FA7B0500890B4B7L, 0xBD70197C26DFC8F9L, 0x607AE95A948A095BL, 0x19C4A4058799EC55L,
            0xC5A9FC21E5DF09C0L, 0xB84AAB0833AB7396L, 0x76C6586A1D825CBBL, 0xF59BF07BAFBCE6C0L, 0x006CDBC5D26A45A8L,
            0xDCC25A9F0621F62DL, 0xCC8C4E48A08511EAL, 0x83D4B2EF97F02B4FL, 0xF7FFDEA8960C5E39L, 0x2DC0D8AC3C6A6140L,
            0x41C7B8500839B853L, 0xBBF5CD196FE639A6L, 0x3E1079E27B02DFFBL, 0xA76CEC86758C2BB9L, 0xB5616951A3210279L,
            0x4895FC655659C663L, 0x10B487B086474DF6L, 0x5AF2A8975C049BDEL, 0xBFDEFE754304B65EL, 0x45B88C628F6DDC35L,
            0x529CEDFE80894BBBL, 0x7893CA4F2876B58BL, 0x4FB8EDAC55FAA221L, 0x2CB1F57FC830F42BL, 0xAB2FD4FF09CB15A3L,
            0xF8807AE98E7BE19BL, 0xFDD9CEB0831438E7L, 0x02140517E93E594EL, 0xF90B46D491978B57L, 0x8AF75603E59942A8L,
            0xF8C3FF97B4A6BBFEL, 0x0222DBCE5A80EB73L, 0x696FC14AADDF5091L, 0x002EAB000050EAF6L, 0x9CE095F19A33943DL,
            0x80509F3E3A14154BL, 0xEF12F29F6A70C823L, 0x90845E3B835067AAL, 0x58761D7BCBF5BFAFL, 0x3642EBF4684689BDL,
            0x3AD94A5B0B136D36L, 0xE5769F142EC75540L, 0x41C63560DA077771L, 0xA6DEC4BF6ABD9C76L, 0x30F9B73ADA41CED5L,
            0x8BE437BB6BD7F13CL, 0x4DD52D0A7130F1DAL, 0x21DD6C4A48B349BFL, 0x4D075B28BE81B1ABL, 0x2015ABDD10265D21L,
            0x2E57D1809F4E64DAL, 0x7C68260B225BC190L, 0x4F642E4470619C09L, 0x9C0CEB14698F06A0L, 0xF549EC5D615C2CA5L,
            0x9B3DAB7E656689E4L, 0x169BD9FD0B0F502CL, 0x789E4C2EC3F5E913L, 0x54AD454B45213A92L, 0x52DE32B560A08C4CL,
            0xAF256539D19378BEL, 0x19D0D644BB379C2AL, 0xB8EF87180876303EL, 0x7A3FD33298B522C7L, 0x5C0EDA92E2AA0B9BL,
            0xE706EC9A4B3F63E5L, 0x74793954C032CAF6L, 0xE48B4617201177D1L, 0x230EA19A354026D7L, 0xB76EC257F03435C3L,
            0x3AE38F8730B58355L, 0x0E606E9ED3E4CDBBL, 0xEE7F1435578A6BFEL, 0xC33ACB0D48CEE739L, 0x22581EEA220F8529L,
            0xF32247EE8044013CL, 0xCFBFE9054ABE9D9BL, 0x62222D068CC9F967L, 0x5995FBBF99CD639CL, 0xC6CC45300D6C5B46L,
            0x1481DBE1357202FCL, 0xB7A96A728972B607L, 0x99214F30845F2D92L, 0xA8CE40FF3821861CL, 0xE977CD5CC68E5635L,
            0x45B2E656365F11A6L, 0x2E1946BFB828464EL, 0x6C712927B73539A1L, 0x4CF2A263C2EE4064L, 0x55D73A52543B8718L,
            0xD536CE475C222659L, 0x5B4323B0D024F2F4L, 0x2BE31CE217972835L, 0xD2056238A7BE6027L, 0x2472B58E5C2C68A5L,
            0xEE0CFA3C3CDBCB3AL, 0x2BC3D67C2A9456A6L, 0xCCEC927102BA9F8BL, 0x99D4D26634F2C7EEL, 0x90CD28B0A49941BCL,
            0x4BED3658846DB60DL, 0xA2AABE2DED518020L, 0xEDE9C05C8179F062L, 0x7E3E3C3949ED0D33L
    };
}
